gpt4 book ai didi

matlab - 在 matlab 中打印 n*m 矩阵

转载 作者:太空宇宙 更新时间:2023-11-03 19:18:49 25 4
gpt4 key购买 nike

在 MATLAB 中,我以这种方式打印了一个非常大的矩阵:

fid = fopen('c:\\OUTPUT.txt','wt');
fprintf(fid,'%f\t',T');
fclose(fid);

但这是不对的!我想像这样打印它:(\t 在它们之间和行尾的 \n)

1   2   3
4 5 6
7 8 9
10 11 12

我搜索并发现如果是 3*3 就可以了:

fprintf(fid,'%f %f %f\n',T');

但在我的情况下,我的尺寸发生了变化......

最佳答案

你可以使用非常简单的

fprintf([repmat('%f\t', 1, size(A, 2)) '\n'], A');

虽然在每一行的末尾都有一个多余的制表符 \t:

>> A = magic(5)

A =

17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9

>> fprintf([repmat('%f\t', 1, size(A, 2)) '\n'], A')
17.000000 24.000000 1.000000 8.000000 15.000000 % oh, a tab
23.000000 5.000000 7.000000 14.000000 16.000000 % oh, a tab
4.000000 6.000000 13.000000 20.000000 22.000000 % oh, a tab
10.000000 12.000000 19.000000 21.000000 3.000000 % oh, a tab
11.000000 18.000000 25.000000 2.000000 9.000000 % oh, a tab

要将输出打印到文件,只需使用

fprintf(fid, [repmat('%f\t', 1, size(A, 2)) '\n'], A')

关于matlab - 在 matlab 中打印 n*m 矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15032549/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com