我想生成一个带有标题和一些数据的csv文件。由于我在Mac上,这不能使用csvwrite,所以我需要使用fprintf。
我将标题存储在名为header的单元格数组中(header ='AB''CB')。无论我在尝试什么,我都会收到错误:
使用fprintf时出错
未为“单元格”输入定义函数。
有人可以用标题示例做一个简单的例子吗?
答案 0 :(得分:0)
这样的事情应该有效,
headers ={'Header1','Header2','Header3'};
fh = fopen('SomeFile.csv','w');
for ii = 1:numel(headers)
if ii == 1
fprintf(fh,headers{ii});
else
fprintf(fh,[',',headers{ii}]);
end
end
randVals = rand(5,3);
for ii = 1:size(randVals,1)
fprintf(fh,'\n');
for jj = 1:size(randVals,2)
if jj == 1
fprintf(fh,num2str(randVals(ii,jj)));
else
fprintf(fh,[',',num2str(randVals(ii,jj))]);
end
end
end
fclose(fh)
你只需要分开标题并执行csvwrite通常会为你做的手动grunt工作。