【问题标题】:Using fprintf for csv in matlab在 matlab 中将 fprintf 用于 csv
【发布时间】:2014-04-10 15:48:43
【问题描述】:

我想生成一个带有标题和一些数据的 csv 文件。由于我在Mac上,使用csvwrite不起作用,所以我需要使用fprintf。

我将我的标题存储在一个名为 header (header = 'AB' 'CB') 的单元格数组中。无论我在尝试什么,我都会得到一个错误:

使用 fprintf 时出错

没有为“单元”输入定义函数。

有人可以用标题示例做一个简单的例子吗?

【问题讨论】:

    标签: macos matlab csv printf cell-array


    【解决方案1】:

    这样的事情应该可以工作,

    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 通常会为您完成的手动繁重的工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多