Export data from CSV file as a vector.
조회 수: 1 (최근 30일)
이전 댓글 표시
I am using an app to try different sources of energy, the problem is that the app exports the data in CSV format, even though it is okay to get the amplitude from the file, it isn't working to get the time. It is in HH:MM:SS.FFF, and I am not being able to export it to matlab as a variable (so I can plot time vs amplitude). I have to export the B column as a vector, any idea?
댓글 수: 1
Konstantinos Sofos
2015년 6월 10일
Could you load a CSV as an example since we do not have any code from your side?
채택된 답변
Konstantinos Sofos
2015년 6월 10일
As I miss your sample of data, I have created one by myself (attached Data.csv). Below you can find a script that read this type of data.
fid = fopen('Data.csv');
if fid > 0
data = textscan(fid,'%d %s %f %d','Delimiter',',');
fclose(fid);
end
refTime=cellfun(@(x) datenum(x,'mm/dd/yyyy HH:MM:SS:FFF'),data(:,2),'UniformOutput',0);
plot(refTime{:},data{:,3})
datetick('x','mm/dd/yyyy HH:MM:SS:FFF');
data will be a cell array, with its second column containing all of the date strings of the format
'01/09/2014 15:27:18:322'
To convert this to number you use the datenum
Regards
댓글 수: 1
Konstantinos Sofos
2015년 6월 11일
편집: Konstantinos Sofos
2015년 6월 11일
After your sample file you can load your data as
fid = fopen('SeismometerData.csv');
if fid > 0
data = textscan(fid,'%s %s %f %f %f','Delimiter',',','HeaderLines',1);
fclose(fid);
end
Timestamp = strcat(data{:,1},'', data{:,2});
TimestampNum=cellfun(@(x) datenum(x,'yyyy:mm:ddHH:MM:SS.FFF'),Timestamp,'UniformOutput',0);
TimestampNum = [TimestampNum{:}];
amplitude = [data{:,5}]';
plot(TimestampNum,amplitude)
ylabel('Amplitude')
xlabel('Clock - Time')
title('Seismometer Data')
grid on
datetick('x','HH:MM:SS');
and the result figure will be
Regards
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Spreadsheets에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!