ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:23.31KB ,
资源ID:8345502      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8345502.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(MATLAB保存数据方法.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

MATLAB保存数据方法.docx

1、MATLAB保存数据方法如果你想保存为.mat的格式,就是用save函数如果想保存成excel格式,就是用xlswrite函数如果想保存成text格式,就是用textwrite函数其他格式还可以使用fwrite函数在循环当中用eval(save date,num2str(i)完成存储,根据i值存入不同的文件Matlab保存for循环下的数据(2015-01-12 05:34:23)转载for i=1:10a=i%加分号后有误,WHY?eval(save data,num2str(i)end使用eval若i不为整数,改换i即可上述为保存至分开的mat数据当中如果要一次保存至一个mat当中,可以直

2、接使用savesave (filename,data1,data2,-ascii,-append)save (filename.mat,data1,data2,-append)save(file_,num2str(i),.mat,myvar)for i=1:10 % succeeda=i;F12=FILE_,num2str(i),.dat;save(F12 ,a);endValue offmtFile Format-matBinary MAT-file format.-asciiText format with 8 digits of precision.-ascii,-tabsTab-del

3、imited text format with 8 digits of precision.-ascii,-doubleText format with 16 digits of precision.-ascii,-double,-tabsTab-delimited text format with 16 digits of precision.Ref:比如:A=1 2 3 4 5 6fid=fopen(D1.txt,wt);fprintf(fid,%d %d %dn,A);fclose(fid);一:存txt文件,用dlmwrite()dlmwrite将一个矩阵写到由分隔符分割的文件中。在保

4、存整数到文件时使用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, a

5、ttrib1, 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,34,5,67,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

6、 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+00

7、0 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);endresult :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,155,10,15,20,257,14,21,28,3511

8、,22,33,44,55二利用xlswrite函数,保存为excel文件类型;xlswrite(filename, M)xlswrite(filename, M, sheet)xlswrite(filename, M, range)xlswrite(filename, M, sheet, range)status = xlswrite(filename, .)status, message = xlswrite(filename, .)xlswrite filename M sheet rangeDescriptionxlswrite(filename, M) writes matrix M

9、to the Excel? file filename. The filename input is a string enclosed in single quotes. The input matrix M is an m-by-n numeric, character, or cell array, where m 65536 and n whos -file matlab.mat Name Size Bytes Class A 2x3 48 double arrayI_q 415x552x3 687240 uint8 arrayans 1x3 24 double arraynum_of

10、_cluster 1x1 8 double arrayGrand total is 687250 elements using 687320 bytes将该文件中的变量导入到工作区中: load matlab.mat该命令执行后,可以在工作区浏览器中看见这些变量,如图13-1所示。图13-1 导入变量后的工作区视图接下来用户可以访问这些变量。num_of_clusternum_of_cluster = 3MATLAB中,另一个导入数据的常用函数为importdata,该函数的用法如下:importdata(filename),将filename中的数据导入到工作区中; A = importda

11、ta(filename),将filename中的数据导入到工作区中,并保存为变量A;importdata(filename,delimiter),将filename中的数据导入到工作区中,以delimiter指定的符号作为分隔符;例13-2 从文件中导入数据。imported_data = importdata(matlab.mat)imported_data = ans: 1.1813 1.0928 1.6534 A: 2x3 doubleI_q: 415x552x3 uint8num_of_cluster: 3与load函数不同,importdata将文件中的数据以结构体的方式导入到工作区

12、中。13.1.3 文件的打开MATLAB中可以使用open命令打开各种格式的文件,MATLAB自动根据文件的扩展名选择相应的编辑器。需要注意的是open(filename.mat)和load(filename.mat)的不同,前者将filename.mat以结构体的方式打开在工作区中,后者将文件中的变量导入到工作区中,如果需要访问其中的内容,需要以不同的格式进行。例13-3 open与load的比较。clear A = magic(3); B = rand(3); saveSaving to: matlab.matclearload(matlab.mat) AA = 8 1 6 3 5 7 4

13、 9 2 BB = 0.9501 0.4860 0.4565 0.2311 0.8913 0.0185 0.6068 0.7621 0.8214clearopen(matlab.mat)ans = A: 3x3 double B: 3x3 double struc1=ans; struc1.Aans = 8 1 6 3 5 7 4 9 2 struc1.Bans = 0.9501 0.4860 0.4565 0.2311 0.8913 0.0185 0.6068 0.7621 0.8214 版权声明:本文为博主原创文章,未经博主允许不得转载。将matlab中数据保存为txt或dat格式2013

14、-12-17 21:59 2278人阅读评论(0) 收藏举报一、命令是:用save *.txt -ascii xx为变量*.txt为文件名,该文件存储于当前工作目录下,再打开就可以打开后,数据有可能是以指数形式保存的.看下面这个例子:a =17 24 1 8 15;23 5 7 14 16 ;4 6 13 20 22 ;10 12 19 21 3 ;11 18 25 2 9 ;save afile.txt -ascii aafile.txt打开之后,是这样的:1.7000000e+001 2.4000000e+001 1.0000000e+000 8.0000000e+000 1.500000

15、0e+0012.3000000e+001 5.0000000e+000 7.0000000e+000 1.4000000e+001 1.6000000e+0014.0000000e+000 6.0000000e+000 1.3000000e+001 2.0000000e+001 2.2000000e+0011.0000000e+001 1.2000000e+001 1.9000000e+001 2.1000000e+001 3.0000000e+0001.1000000e+001 1.8000000e+001 2.5000000e+001 2.0000000e+000 9.0000000e+0

16、00下面可以解决以上问题:用fprintf命令:以上面的例子为例:第一种情况: a=17 24 1 8 15;23 5 7 14 16 ;4 6 13 20 22 ;10 12 19 21 3 ;11 18 25 2 9 ;fid = fopen(b.txt,wt);fprintf(fid,%gn,a); % # n 换行fclose(fid);然后用写字板打开b.txt,内容如下:为列向量 17234101124561218171319258142021215162239第二种情况:对上面的命令做一下改动:# n 换行改为t,table键fid = fopen(b.txt,w);fprint

17、f(fid,%gt,a);fclose(fid);然后用写字板打开b.txt,内容如下:为行向量:17 23 4 10 11 24 5 6 12 18 1 7 13 19 25 8 14 20 21 2 15 16 22 3 9 第三种情况:综合上面的两个结果,我们编写以下命令:fid=fopen(b.txt,wt);%写入文件路径m,n=size(a);for i=1:1:mfor j=1:1:nif j=nfprintf(fid,%gn,a(i,j);elsefprintf(fid,%gt,a(i,j);endendendfclose(fid);然后用写字板打开b.txt,内容如下:矩阵

18、17 24 1 8 1523 5 7 14 164 6 13 20 2210 12 19 21 311 18 25 2 9说明:以上操作都是在当前的工作目录下完成!下面给出最一般的模型,大家可以试着自己操作,如果需要dat格式,直接把txt换为dat就可以fid=fopen(C:Documents and Settingscleantotal.ped,wt);%写入文件路径input_mattrix=10 20 10 80 15;23 5 7 14 16 ;4 6 13 20 22 ;10 12 19 21 3 ;11 18 25 2 9 ;matrix=input_mattrix %input_matrix为待输出矩阵m,n=size(matrix);for i=1:1:mfor j=1:1:nif j=nfprintf(fid,%gn,matrix(i,j);elsefprintf(fid,%gt,matrix(i,j);endendendfclose(fid);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1