0

我在 Octave 中做一个程序,将很多矩阵相乘。所有的矩阵都存储在一个单元矩阵中。在哪里:

cell(index,1) is the matrix in the left
cell(index,2) is the matrix in the right
cell(index,3) is the result.

我想以这种方式将很多矩阵保存在一个文件中,例如:

cell(index,1) cell(index,2) = cell(index,3) 
cell(index,1) cell(index,2) = cell(index,3)
cell(index,1) cell(index,2) = cell(index,3)

等等。

我知道存在一个函数dlmwrite,但我不知道如何使用它(我是八度的新手),所以我可以拥有这种格式。

4

1 回答 1

0

至少有两种方法可以做到这一点。如果您只打算在 matlab 中使用它,请使用 save 命令。save filename.dat cell. 这是read filename.datcell2mat

在您的情况下,我相信您实际上想要将值打印到屏幕或文件中。如果您在 matlab 中以正确的方式进行操作,则任何一种方法都几乎相同。这是一般的想法:

for index=1:size(cell,1)
  fprintf("%i %i = %i\n",cell(index,1),cell(index,2),cell(index,3));
end

打印到文件非常相似

fid=fopen("somefile.txt","w")
for index=1:size(cell,1)
  fprintf(fid,"%i %i = %i\n",cell(index,1),cell(index,2),cell(index,3));
end
fclose(fid);
于 2012-11-25T00:15:12.517 回答