3
我有兩個矩陣A和B如下面給出:如何fprintf列標題在MATLAB中?
A = [1
2
3
4
5]
B = [10 11 12 13
15 16 17 18
17 12 15 13
20 21 22 17
40 41 32 33]
和我想將其輸出到在下面給出與列標題的形式的文本文件,如下所示:
希望的文本輸出
A B B B B
1 10 11 12 13
2 15 16 17 18
3 17 12 15 13
4 20 21 22 17
5 40 41 32 33
重現代碼
A = [1; 2; 3; 4; 5];
B = [10, 11, 12, 13;
15, 16, 17, 18;
17, 12, 15, 13;
20, 21, 22, 17;
40, 41, 32, 33;];
ALL = [A B];
ALL_cell = mat2cell(ALL, ones(size(ALL,1),1), size(ALL,2));
fID = fopen('output.dat','w');
f = @(x) fprintf(fID,'%s\n',sprintf('%f\t',x));
cellfun(f,ALL_cell);
fclose(fID);
如何在MATLAB中插入如上所示的列標題?有時,在B中的列可能會超過100,作爲一個例子,我已經給只有4
因此,通過列標題,您只需要變量的名稱(即, 'B')在每一列重複?只是'fprintf(fID,'%s \ n',sprintf('%s \ t',['A',repmat('B',size(1,size(B,2)))])''? – Dan
你有至少MATLAB R2013b嗎?使用'table'函數及其他方法將被證明是非常有用的。讓我知道如果你這樣做,我會寫一個答案。 – rayryeng
@rayryeng我使用R2012b。 –