0
我有一个文件夹充满'N'个大小为(m,n)的.csv文件。我想导入它们,同时将每个文件转换为一个大小为(mxn)的列矩阵,并将它们存储在一个(mxn,N)大小的矩阵中,每列都有相应文件的名称。导入许多csv文件
我的代码无法从.csv文件中检索数据并显示错误。这些数据是一个月平均降雨量数据,有13列(年,jan,feb ...... dec),我不想输入年份列,因为它没有降雨值而只是年份值。
我的代码是
list=dir('*.csv');
N=numel(list);
h=zeros(1300,N);
for k =1:1:N;
data=csvread(list(k).name);
M=size(data);
for j=1:M(1)
for i=1:M(1)
h(i+1+(j-1)*12,k)=data(j,i);
end
end
end
这里h
是我想要存储的所有数据的矩阵。
Error using dlmread (line 138)
Mismatch between file and format string.
Trouble reading number from file (row 1u, field 1u) ==> "Year" "Jan" "Feb"
"Mar" "Apr" "May" "Jun" "Jul" "Aug" "Sep" "Oct" "Nov" "Dec"\n
虽然上面的代码是在matlab中,但在R编程语言中的任何回复也是可以接受的。
R中的工作流已经被描述了很多次。请按照“导入多个文件”的方式进行搜索。为了缩小它,你需要函数'list.files()','do.call()',当然还有'read.table()'或者它的任何变体。 – 2015-03-03 08:45:57
'csvread'仅用于数字数据。你必须使用另一个函数来读入,例如这样:http://stackoverflow.com/questions/6759657/reading-text-data-from-a-csv-file-in-matlab – Daniel 2015-03-03 08:48:51
可能的重复[Import具有混合数据类型的CSV文件](http://stackoverflow.com/questions/4747834/import-csv-file-with-mixed-data-types) – Daniel 2015-03-03 08:53:49