【发布时间】:2013-06-23 21:51:30
【问题描述】:
我需要在 Matlab 中读取一个 CSV 文件。该文件主要是数字(除了第一列,它实际上有 178 列)并且有缺失值,用 NA 表示。例如,这里有两行:
24-MAR-2005 , 2.145202 , 2.192237 , 2.238725 , 2.284657 , 2.330028 , 2.374829 , 2.419056 , ...
2005 年 3 月 25 日,不适用,不适用,不适用,不适用,不适用,不适用,不适用,...
我想将这些 NA 读取为 NaN 并将整体转换为矩阵,但我无法正确完成。
顺便说一句,我真的不需要日期(即第一列)。
这是我尝试过的:
filename = 'foo.csv';
fid = fopen(filename,'rt');
[data]=textscan(fid, '%s %f' , 178,'delimiter',',',...
'TreatAsEmpty','NA',...
'EmptyValue', NaN);
【问题讨论】:
-
我试图扫描,处理空的'NA'并将空值设置为NaN filename ='foo.csv'; fid = fopen(文件名,'rt'); [data]=textscan(fid, '%s %f' , 178,'delimiter',',','TreatAsEmpty','NA', 'EmptyValue', NaN);