Time reading in matlab
14 views (last 30 days)
Show older comments
Hi, I have a data set, using matlab I need to read all the data.But the date and time reading is not working.Please help me.
8 Comments
Accepted Answer
Sulaymon Eshkabilov
on 24 Aug 2019
Hi,
Here is the complete solution script. Please note that your data file is renamed (S1932.txt):
File_Name = 'S1932.txt';
Formatting_Spec = '%s%s%s %s%f%s %f%f%f %c %d%d%d';
N_header = 10;
My_FID=fopen(File_Name, 'r');
DATA=textscan(My_FID, Formatting_Spec, 'headerlines', N_header);
fclose(My_FID);
Date = DATA{1}; % You can ignore this
Time = DATA{2}; % You can ignore this
ET = DATA{3}; % You can ignore this
GT = DATA{4};
MAG = DATA{5};
M = DATA{6};
LAT = DATA{7};
LON = DATA{8};
DEPTH= DATA{9};
Q = DATA{10};
EVID = DATA{11};
NPH = DATA{12};
NGRM = DATA{13};
Good luck.
More Answers (1)
Walter Roberson
on 24 Aug 2019
%set up
opt = detectImportOptions('1932.catalog', 'FileType', 'text', 'readvariablenames', false, 'HeaderLines', 10);
opt = setvartype(opt, 1, 'datetime');
opt = setvaropts(opt,1,'InputFormat', 'yyyy/MM/dd');
opt.VariableNames = {'Date', 'Time', 'ET', 'GT', 'MAG', 'M', 'LAT', 'LON', 'DEPTH', 'Q', 'EVID', 'NPH', 'NGRM'};
%read the file
datatable = readtable('1932.catalog', opt);
%throw away the garbage last entries
datatable = rmmissing(datatable);
%create a composite date/time from the date and time fields
datatable.DateTime = datatable.Date + datatable.Time;
datatable.DateTime.Format = 'dd-MMM-uuuu HH:mm:ss.SSS';
See Also
Categories
Find more on Data Type Conversion in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!