Time serie import from csv

19 次查看(过去 30 天)
Agnete
Agnete 2013-10-4
回答: Andualem 2024-2-22
I need help on import of a time series to matlab. The time series has been converted to csv (number formats gets the dilimanation ""?!!). I have tried Import Data Wizard to import the csv file, but it resulted in one collected column.
Then I tried to make a script. Currently I get this error message:
Error using textscan Delimiter must be a string.
Error in importfile (line 6) A=textscan(fid,'%s %f %f %f %f %f %f %f %f %f %f','HEADERLINES',1 ,'Delimiter', {',' ,'"'},'CollectOutput',1,'HEADERLINES',1);
My code is: function [data,time,ts1]=importfile(NAMgaug) clear all NAM='Nam_rain_2005-2011_6.csv'; fid=fopen(NAM,'r'); A=textscan(fid,'%s %f %f %f %f %f %f %f %f %f %f','HEADERLINES',1 ,'Delimiter', {',' ,'"'},'CollectOutput',1,'HEADERLINES',1); fclose(fid); time=datenum(A(end:1)); data=A(end:2); ts1=timeseries(data,datestr(time)); end
Any heads-up is greatly appreciated
By the way I use Matlab R2012a
  2 个评论
Cedric
Cedric 2013-10-4
Why do you need the conversion to CSV?
Agnete
Agnete 2013-10-6
I thought matlab could not read excel formats. Thanks so much for the reply.

请先登录,再进行评论。

采纳的回答

Cedric
Cedric 2013-10-4
编辑:Cedric 2013-10-4
I'd personally read data directly from the XLS file..
[num,txt] = xlsread( 'Nam_rain_2005-2011_6.xls' ) ;
dates = datenum( txt(2:end) ) ;
columnCodes = num(1,:) ;
data = num(2:end,:) ;
which avoids the conversion to CSV and the need for building a TEXTSCAN-based parser.

更多回答(1 个)

Andualem
Andualem 2024-2-22
i have csv data for pm2.5 and want work plot

Community Treasure Hunt

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

Start Hunting!

Translated by