我需要阅读下列csv
文件在MATLAB:阅读CSV与混合型数据
2009-04-29 01:01:42.000;16271.1;16271.1
2009-04-29 02:01:42.000;2.5;16273.6
2009-04-29 03:01:42.000;2.599609;16276.2
2009-04-29 04:01:42.000;2.5;16278.7
...
我想有三列:
时间戳;值1;值2
我试过办法这里描述:
Reading date and time from CSV file in MATLAB
修改为:
filename = 'prova.csv';
fid = fopen(filename, 'rt');
a = textscan(fid, '%s %f %f', ...
'Delimiter',';', 'CollectOutput',1);
fclose(fid);
但它回退了1x2单元格,其第一个元素是a{1}='ÿþ2'
,另一个是空的。
我也试图解答适应我的情况下,对这些问题:
importing data with time in MATLAB
Read data files with specific format in matlab and convert date to matal serial time
但我没有成功。
如何导入csv
文件?
编辑 @macduff的答案后,我试图复制粘贴在一个新的文件上面报道的数据和使用:
a = textscan(fid, '%s %f %f','Delimiter',';');
和它的作品。 不幸的是,没有解决问题,因为我不得不处理csv
文件自动生成,这似乎是奇怪的MATLAB行为的原因。
也许Matlab出于某种原因在第一行上窒息?您是否对生成的文件和使用复制粘贴进行了区别?你可以从Matlab复制/粘贴编程并使其工作吗? – Superbest