MATLAB保存数据方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如果你想保存为.mat的格式,就是用save函数
如果想保存成excel格式,就是用xlswrite函数
如果想保存成text格式,就是用textwrite函数
其他格式还可以使用fwrite函数
在循环当中用eval(['save date',num2str(i)'])完成存储,根据i值存入不同的文件Matlab保存for循环下的数据
(2015-01-12 05:34:23)
转载▼
for i=1:10
a=i%%加分号后有误,WHY??
eval(['save data',num2str(i)])
end
使用eval
若i不为整数,改换i即可
上述为保存至分开的mat数据当中
如果要一次保存至一个mat当中,可以直接使用save
save ('filename','data1','data2','-ascii','-append')
save ('filename.mat','data1','data2','-append')
save(['file_',num2str(i),'.mat'],myvar)
for i=1:10 %%% succeed
a=i;
F12=['FILE_',num2str(i),'.dat'];
save(F12 ,'a');
end
Value of fmt File Format
比如:A=[1 2 3
4 5 6]
fid=fopen('D1.txt','wt');
fprintf(fid,'%d %d %d'\n',A');
fclose(fid);
一:存txt文件,用dlmwrite()dlmwrite
将一个矩阵写到由分隔符分割的文件中。
在保存整数到文件时使用save存为ascii文件时,常常是文件里都是实型格式的数据(有小数点,和后面很多的0,看着很不方便)。于是要保存此类数据时,我们可以使用此dlmwrite 命令。
使用方法:
dlmwrite('filename', M)
使用默认分隔符“,”将矩阵M写入文本文件filename中;
dlmwrite('filename', M, 'D')
使用分隔符D分割数据,“\t”表示tab分割,“,”为默认分割符;
dlmwrite('filename', M, 'D', R, C)
从矩阵M的第R行、第C列开始,作为要写矩阵块的左上角,将数据用D分割写入文件。其他用法有:
dlmwrite('filename', M, 'attrib1', value1, 'attrib2', value2, ...)
dlmwrite('filename', M, '-append')
dlmwrite('filename', M, '-append', attribute-value list)
例如:
a = [1 2 3; 4 5 6; 7 8 9];
dlmwrite('test.txt', a);
则test.txt中的内容为:
1,2,3
4,5,6
7,8,9
而使用save保存为TXT文件类型:
a = [1 2 3; 4 5 6; 7 8 9];
save 'tst.txt' a -ascii;
文本文件里的内容为:
1.0000000e+000
2.0000000e+000
3.0000000e+000
4.0000000e+000
5.0000000e+000
6.0000000e+000
7.0000000e+000 8.0000000e+000 9.0000000e+000
而使用save保存为dat文件类型:
a = [1 2 3; 4 5 6; 7 8 9];
save11.dat a -ascii;
11.dat文件里的内容为:
1.0000000e+000
2.0000000e+000
3.0000000e+000
4.0000000e+000
5.0000000e+000
6.0000000e+000
7.0000000e+000 8.0000000e+000 9.0000000e+000
在循环结构中可利用以下代码:
for i=1:3 %%%%succeed;
a = [1 2 3; 4 5 6; 7 8 9];
filename=['phi_',num2str(i), '.txt'];
dlmwrite(filename, a);
end
result :1.txt,2.txt,3.txt;
利用cswrite函数保存成dat类型。
m = [3 6 9 12 15; 5 10 15 20 25; 7 14 21 28 35; 11 22 33 44 55];
csvwrite('csvlist.dat',m);
3,6,9,12,15
5,10,15,20,25
7,14,21,28,35
11,22,33,44,55
二.利用xlswrite函数,保存为excel文件类型;
xlswrite(filename, M)
xlswrite(filename, M, sheet)
xlswrite(filename, M, range)
xlswrite(filename, M, sheet, range)