importing CSV data with multiple formats in a row into MATLAB ?

1 次查看(过去 30 天)
I have to read the following PMU data into MATLAB from a CSV data file including different formats of the data.
The first two rows of my data looks like. First row is header and second row is actual data.Also i need to skip date "2014/05/26" from the first entry.
Timestamp,Test:V+:Magnitude,Test:V+:Angle,Test:I+:Magnitude,Test:I+:Angle,Eldrich2:V+:Magnitude,Eldrich2:V+:Angle,Eldrich2:I+:Magnitude,Eldrich2:I+:Angle
2014/05/26 15:27:17.140,2.4305,170.3142,0.4488,122.2368,2.9103,-129.0612,0.463,23.9783
Do you help me with a code to solve it?

采纳的回答

dpb
dpb 2014-5-27
Try sotoo of--
fid = fopen('abcd.csv','r');
fmt=['%*s %2d:%2d:%2d.%3d repmat('%f',1,9)];
C = textscan(fid, fmt,'headerlines',1','delimiter',',','collectoutput',true);
fid=fclose(fid);
NB: AIRCODE, untested, salt to suit...

更多回答(1 个)

dpb
dpb 2014-5-27
Many options in Matlab; probably the simplest to code is
[dat,txt]=xlsread(yourfile);
_dat_ will be an array of the numeric data while _txt_ will contain the text in a cell
You can force into given forfmats via textscan and/or textread
  1 个评论
Farhan
Farhan 2014-5-27
I am using textscan for this. Code:
% to read CSV file fid = fopen('abcd.csv'); C = textscan(fid, '%s %f %f %f %f %f %f %f %f'); fclose(fid);
But its not working.
Could help me to identify the problem?

请先登录,再进行评论。

产品

Community Treasure Hunt

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

Start Hunting!

Translated by