【问题标题】:writing matrix columns with different precisions(significant digits) in matlab在matlab中编写具有不同精度(有效数字)的矩阵列
【发布时间】:2015-06-08 15:47:18
【问题描述】:

我有一个矩阵 m=[10 15.675; 13.5 34.987; 20 55.5]; 我想把这个矩阵写在 o txt 文件上。我想对每列使用不同的精度。例如,1 代表第一列,2 代表第二列。

期望的输出:

10.0 15.68

13.5 34.99

20.0 55.50

我目前正在使用 dlmwrite(fileName, m,'-append','delimiter','\t','precision',2,'roffset' ,1,'换行','pc');

但是,这适用于 '.' 之后的 2 位重要字符。对于所有列。

有没有办法为矩阵的每一列应用不同的有效数字?

【问题讨论】:

    标签: matlab matrix precision significant-digits


    【解决方案1】:

    也许像这样简单?

    m = [10 15.675; 13.5 34.987; 20 55.5];
    file = fopen('file.txt', 'w');
    
    for ii = 1:size(m, 1)
        fprintf(file, '%0.1f %0.2f\n', m(ii, 1), m(ii, 2));
    end
    

    我已经编辑添加了 '\n'

    【讨论】:

    • 它有效,谢谢。我使用这个版本没有 for 循环: fprintf(file, '%0.1f %0.2f \n', m');
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-24
    • 1970-01-01
    • 2017-08-01
    相关资源
    最近更新 更多