Matlab:如何将矩阵的单元格数组写入文件

时间:2014-05-31 11:03:11

标签: matlab cell cell-array

我有一个包含多个矩阵的单元格(所有矩阵都是双倍的,具有相同的维度)

my_cell = 

    [172x15 double]    [172x15 double]    [172x15 double]    [172x15 double]

我想并排编写txt文件中的矩阵并制成表格,以获得一个包含172行和60列的.txt文件(在本例中)

3 个答案:

答案 0 :(得分:2)

使用dlmwritecell2mat

mat = cell2mat(my_cell);
delimiter = ' ';  % // used to separate two values in a row in the file
filename  = 'test.txt';
dlmwrite(filename,mat,delimiter);

答案 1 :(得分:2)

>> dlmwrite('file1.txt', [c{:}],'delimiter','\t','precision','%.5f') 

>> dlmwrite('file2.txt', c(:)','delimiter','\t','precision','%.5f') 

你必须选择一个精度,否则你会得到不均匀的行,因为小数位数不同。

答案 2 :(得分:1)

<强>代码

%// output_filepath is the name of your output text file

c1 = horzcat(my_cell{:})
datacell = mat2cell(c1,ones(1,size(c1,1)),ones(1,size(c1,2)))
dlmwrite(output_filepath,datacell,'\t'); %// a TAB delimiter is used