2013-01-18 54 views
1

我有多个数据数组,其中只有x,y和z数组需要导出为文本。我知道如何导出单个数组,但无法将3列数据导出为文本文件。 请大家帮忙,我试着用以下..如何将数据从matlab导出为文本文件

 fid = fopen('g.txt','w'); 
     fprintf(fid,'%f \n',x,y,z); 
     fclose(fid); 

回答

10

尝试dlmwrite,例如:

x=[1:10]'; 
y=2*x; 
z=3*x; 
dlmwrite('g.txt',[x,y,z],'delimiter', '\t'); 


>type 'g.txt' 

1 2 3 
2 4 6 
3 6 9 
4 8 12 
5 10 15 
6 12 18 
7 14 21 
8 16 24 
9 18 27 
10 20 30 
+0

感谢您的帮助,但是,我想打印数据作为单独的列 – rcty

+1

你的意思是像我刚才在回答编辑做? – bla

+0

@华纳是,这就是我需要的! – rcty

3

你不想分隔符写,你想csvwrite。它将在Excel和类似程序中很好地打开。

以下示例从矩阵m中创建逗号分隔值文件。

m = [3 6 9 12 15; 5 10 15 20 25; ... 
    7 14 21 28 35; 11 22 33 44 55]; 

csvwrite('csvlist.csv',m) 
type csvlist.csv 

3,6,9,12,15 
5,10,15,20,25 
7,14,21,28,35 
11,22,33,44,55 

http://www.mathworks.com/help/matlab/ref/csvwrite.html

相关问题