how to read mixed date and data

2 visualizzazioni (ultimi 30 giorni)
DwiNY
DwiNY il 24 Set 2021
Commentato: DwiNY il 27 Set 2021
How to read this data file:
2020/11/15 07:30:55 27.50 124
2020/11/15 07:40:55 27.63 114
2020/11/15 07:50:55 27.71 95

Risposta accettata

Jeremy Hughes
Jeremy Hughes il 27 Set 2021
I made some corrections in the comments above, but this is how I would do this more robustly using partial detection with detectImportOptions.
filename = "example.txt";
opts = detectImportOptions(filename,"Delimiter","\t");
opts = setvaropts(opts,1,"Type","datetime","InputFormat","uuuu/MM/dd HH:mm:ss");
T = readtable(filename,opts)
T = 3×3 table
Var1 Var2 Var3 ___________________ _____ ____ 2020/11/15 07:30:55 27.5 124 2020/11/15 07:40:55 27.63 114 2020/11/15 07:50:55 27.71 95
  2 Commenti
DwiNY
DwiNY il 27 Set 2021
Dear Jeremy Hughes,
Thank you very much
DwiNY
DwiNY
DwiNY il 27 Set 2021
Jeremy,
If you could make more a general, i.e. input file with XX number of lines of header would be appreciate.
Thank you

Accedi per commentare.

Più risposte (1)

the cyclist
the cyclist il 24 Set 2021
I would try the readtable function.
You can specify the input formating if needed.
  4 Commenti
DwiNY
DwiNY il 27 Set 2021
Finally, I able to read the file correctly:
fid=fopen('filename.txt','rt');
formatSpec = '%{yyyy/mm/dd}D %{HH:mm:ss}D %f%f ';
delimiter = {'\t',' '};
dataArray = textscan(fid, formatSpec, 'Delimiter', delimiter,'MultipleDelimsAsOne', true, 'ReturnOnError', false);
fclose(fid)
Jeremy Hughes
Jeremy Hughes il 27 Set 2021
If you're using format, there are issues with your format in both cases: mm cannot be both months and minutes, you want MM.
Also, you probably want the second part as duration if you're parsing these as separate fields.
try this: formatSpec = '%{yyyy/MM/dd}D{hh:mm:ss}T%f%f'
But I like your first approach better:
delimiter = '\t'; %no space
formatSpec = '%{yyyy/MM/dd HH:mm:ss}D%f%f'

Accedi per commentare.

Categorie

Scopri di più su Dates and Time in Help Center e File Exchange

Prodotti


Release

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by