Matlab: pb pour concaténer dates et données
bean
-
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai créé une colonne datestring1 de dates, du type
2006/12/01 01:29:59:501
2006/12/01 01:29:59:601
2006/12/01 01:29:59:701
2006/12/01 01:29:59:801
2006/12/01 01:29:59:901
et j'aimerais la concaténer avec la matrice M des données mesurées correspondant à ces dates
Le problème, c'est que que j'utilise [datestring1,M] ou la fonction horzcat(datestring1,M), j'obtiens toujours du type
2006/12/01 01:29:59:101
2006/12/01 01:29:59:201
2006/12/01 01:29:59:301
Les données sont donc mal affichées.
Je pense que c'est lié au type de datestring1, mais comment résoudre ce problème?
Merci,
J'ai créé une colonne datestring1 de dates, du type
2006/12/01 01:29:59:501
2006/12/01 01:29:59:601
2006/12/01 01:29:59:701
2006/12/01 01:29:59:801
2006/12/01 01:29:59:901
et j'aimerais la concaténer avec la matrice M des données mesurées correspondant à ces dates
Le problème, c'est que que j'utilise [datestring1,M] ou la fonction horzcat(datestring1,M), j'obtiens toujours du type
2006/12/01 01:29:59:101
2006/12/01 01:29:59:201
2006/12/01 01:29:59:301
Les données sont donc mal affichées.
Je pense que c'est lié au type de datestring1, mais comment résoudre ce problème?
Merci,
A voir également:
- Matlab: pb pour concaténer dates et données
- Gnu octave matlab - Télécharger - Édition & Programmation
- Intervalle sur matlab ✓ - Forum Matlab
- Termes de Matlab ✓ - Forum Matlab
- Problème diffusion matlab - Forum Matlab
- Matlab 6.5 download - Forum Windows
3 réponses
une idée : convertir ta matrice en string.
num2str() ?
num2str() ?
Bonjour,
Merci, effectivement la matrice M de format double a été converti en char
Par contre l'export ne marche toujours pas.
Je pense que cela est du au fprintf. Comme la matrice double 6000x15 a été convertie en char 6000x190, je ne peux plus laisser les 15 fois %f dans fprintf.
Dois je taper 190 fois %f, ou il y a un moyen plus rapide pour indiquer dans fprintf le format de plusieurs colonnes?
Merci,
Merci, effectivement la matrice M de format double a été converti en char
Par contre l'export ne marche toujours pas.
Je pense que cela est du au fprintf. Comme la matrice double 6000x15 a été convertie en char 6000x190, je ne peux plus laisser les 15 fois %f dans fprintf.
Dois je taper 190 fois %f, ou il y a un moyen plus rapide pour indiquer dans fprintf le format de plusieurs colonnes?
Merci,
finalement j'ai choisir de convertir les dates en type numérique. ça permet d'afficher datestring1 et M ensemble.
Voici la source:
datestring1=datestr(datenum('30-Dec-1899')+time(1:length(time)),'yyyy mm dd HH MM SS FFF');
dates = str2num(datestring1)
fprintf(fid, '%f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f\n', horzcat(dates,M));
Cependant, les fichiers exportés ne respectent plus les colonnes, et deviennent
2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000
12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000
12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000
12.000000 12.000000 12.000000 12.000000 12.000000 12.000000
...
Voici la source:
datestring1=datestr(datenum('30-Dec-1899')+time(1:length(time)),'yyyy mm dd HH MM SS FFF');
dates = str2num(datestring1)
fprintf(fid, '%f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f\n', horzcat(dates,M));
Cependant, les fichiers exportés ne respectent plus les colonnes, et deviennent
2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000 2006.000000
12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000
12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000 12.000000
12.000000 12.000000 12.000000 12.000000 12.000000 12.000000
...