Matlab数据的导入与导出_第1页
Matlab数据的导入与导出_第2页
Matlab数据的导入与导出_第3页
Matlab数据的导入与导出_第4页
Matlab数据的导入与导出_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2023/2/3数据的导入与导出2023/2/3主要内容从TXT文件中读取数据把数据写入TXT文件从Excel文件中读取数据把数据写入Excel文件2023/2/3第一节从TXT文件中读取数据MATLAB中读取文本文件的常用函数2023/2/3一、利用数据导入向导导入TXT文件2023/2/3数据文件略去……【例2.1-1】利用数据导入向导读取文件examp02_01.txt至examp02_11.txt中的数据2023/2/3二、调用高级函数读取数据1.调用importdata函数读取数据调用格式:importdata(filename)A=importdata(filename)A=importdata(filename,delimiter)A=importdata(filename,delimiter,headerline)[AD]=importdata(…)[ADH]=importdata(…)[…]=importdata(‘-pastespecial’,…)

2023/2/3>>importdata('examp02_04.txt')>>x=importdata('examp02_07.txt')>>x=importdata('examp02_03.txt',';')>>x=importdata('examp02_08.txt','',2)>>[x,s,h]=importdata('examp02_07.txt')>>FileContent=importdata('examp02_10.txt')【例2.1-2】调用importdata函数读取文件examp02_01.txt至examp02_11.txt中的数据2023/2/32.调用load函数读取数据调用格式:S=load(filename)S=load(filename,variables)S=load(filename,'-mat',variables)S=load(filename,'-ascii')load(...)load...2023/2/3>>loadexamp02_01.txt>>load-asciiexamp02_01.txt>>x1=load('examp02_02.txt')>>x1=load('examp02_02.txt','-ascii');>>loadexamp02_03.txt>>loadexamp02_04.txt……【例2.1-3】调用load函数读取文件examp02_01.txt至examp02_12.txt中的数据2023/2/33.调用dlmread函数读取数据调用格式:M=dlmread(filename)M=dlmread(filename,delimiter)M=dlmread(filename,delimiter,R,C)M=dlmread(filename,delimiter,range)2023/2/3>>x=dlmread('examp02_03.txt')>>x=dlmread('examp02_03.txt',',',2,3)>>x=dlmread('examp02_03.txt',',',[1,2,2,5])>>x=dlmread('examp02_05.txt')>>x=dlmread('examp02_06.txt')>>x=dlmread('examp02_09.txt')……【例2.1-4】调用dlmread函数读取文件examp02_01.txt至examp02_11.txt中的数据2023/2/34.调用textread函数读取数据调用格式:[A,B,C,…]=textread('filename','format')[A,B,C,…]=textread('filename','format',N)[…]=textread(…,'param','value',…)textread函数支持的format字符串textread函数支持的参数名与参数值列表2023/2/3>>x1=textread('examp02_01.txt');>>x2=textread('examp02_02.txt');>>x3=textread('examp02_03.txt','','delimiter',',');>>[c1,c2,c3,c4,c5]=textread('examp02_04.txt','%f%f%f%f%f','delimiter',',;*');>>x5=textread('examp02_05.txt','','emptyvalue',-1)>>x8=textread('examp02_08.txt','','headerlines',7)>>x9=textread('examp02_09.txt','','delimiter',',','whitespace','+i')>>[c1,c2,c3,c4,c5,c6,c7,c8]=textread('examp02_09.txt',...'%f%f%f%f%f%f%f%f','delimiter',',','whitespace','+i');……【例2.1-5】调用textread函数读取文件examp02_01.txt至examp02_11.txt中的数据2023/2/3三、调用低级函数读取数据1.调用fopen函数打开文件调用格式:[fid,message]=fopen(filename,permission)[filename,permission]=fopen(fid)2023/2/32.调用fclose函数关闭文件调用格式:status=fclose(fid)status=fclose('all')2023/2/33.调用fseek、ftell、frewind和feof函数控制读写位置调用格式:status=fseek(fid,offset,origin)%设定文件指针位置position=ftell(fid)%获取文件指针位置frewind(fid)%移动当前文件指针到文件的开头eofstat=feof(fid)%判断是否到达文件末尾2023/2/34.调用fgets、fgetl函数读取文件的下一行调用格式:tline=fgets(fid)tline=fgets(fid,nchar)tline=fgetl(fid)2023/2/35.调用textscan函数读取数据调用格式:C=textscan(fid,'format')C=textscan(fid,'format',N)C=textscan(fid,'format',param,value,…)C=textscan(fid,'format',N,param,value,…)C=textscan(str,…)[C,position]=textscan(…)2023/2/3>>fid=fopen('examp02_08.txt','r');%以只读方式打开文件examp02_08.txt>>fgets(fid);%读取文件的第1行>>fgets(fid);%读取文件的第2行>>A=textscan(fid,'%f%f%f%f%f%f','CollectOutput',1)A=[3x6double]>>fgets(fid);%读取文件的第6行>>fgets(fid);%读取文件的第7行>>B=textscan(fid,'%f%f%f','CollectOutput',1)B=[2x3double]>>fclose(fid);%关闭文件……【例2.1-6】调用textscan函数读取文件examp02_01.txt至examp02_13.txt中的数据2023/2/3第二节把数据写入TXT文件MATLAB中写文本文件的常用函数2023/2/3一、调用dlmwrite函数写入数据调用格式:dlmwrite(filename,M)dlmwrite(filename,M,'D')dlmwrite(filename,M,'D',R,C)dlmwrite(filename,M,'attrib1',value1,'attrib2',value2,…)dlmwrite(filename,M,'-append')dlmwrite(filename,M,'-append',attribute-valuelist)dlmwrite函数支持的参数名与参数值列表2023/2/3%定义复数矩阵>>x=[1.455390+1.360686i8.692922+5.797046i5.498602+1.449548i8.530311+6.220551i3.509524+5.132495i4.018080+0.759667i2.399162+1.233189i1.839078+2.399525i4.172671+0.496544i9.027161+9.447872i4.908641+4.892526i3.377194+9.000538i];%将复数矩阵x写入文件examp02_09.txt,用逗号(',')作分隔符,用'\r\n'作换行符>>dlmwrite('examp02_09.txt',x,'delimiter',',','newline','pc')【例2.2-1】用逗号作为分隔符,调用dlmwrite函数将如下复数矩阵写入文件examp02_09.txt2023/2/3二、调用fprintf函数写入数据调用格式:count=fprintf(fid,format,A,…)【例】

%在屏幕上显示一句话>>y=fprintf(1,'祝福我们伟大的新中国%d周岁生日快乐!!!',60)祝福我们伟大的新中国60周岁生日快乐!!!y=382023/2/3%产生一个8行5列的随机矩阵,其元素服从[0,10]上的均匀分布>>x=10*rand(8,5);%以写入方式打开文件,返回文件标识符>>fid=fopen('examp02_01.txt','wt');%把矩阵x以指定格式写入文件examp02_01.txt>>fprintf(fid,'%-f%-f%-f%-f%-f%-f%-f%-f\n',x);>>fclose(fid);%关闭文件……【例2.2-2】用fprintf函数将数据写入文件examp02_01.txt至examp02_11.txt的代码调用fprintf函数写入数据或在屏幕上显示数据时,format参数指定的格式循环作用在矩阵的列上,原始矩阵的列在文件中或屏幕上就变成了行。2023/2/3第三节从Excel文件中读取数据2023/2/3一、利用数据导入向导导入Excel文件2023/2/3二、调用xlsread函数读取数据调用格式:num=xlsread(filename)num=xlsread(filename,-1)num=xlsread(filename,sheet)num=xlsread(filename,range)num=xlsread(filename,sheet,range)num=xlsread(filename,sheet,range,'basic')num=xlsread(filename,…,functionhandle)[num,txt]=xlsread(filename,…)[num,txt,raw]=xlsread(filename,…)[num,txt,raw,X]=xlsread(filename,…,functionhandle)xlsreadfilenamesheetrangebasic2023/2/3%读取文件examp02_14.xls第1个工作表中单元格A2:H4中的数据>>num=xlsread('examp02_14.xls','A2:H4')%返回读取的数据矩阵numnum=1601016010101NaN063632601016010102NaN073733601016010103NaN000【例2.3-1】用xlsread函数的这种调用读取文件examp02_14.xls第1个工作表中区域A2:H4的数据2023/2/3第四节把数据写入Excel文件2023/2/3一、调用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,…)xlswritefilenameMsheetrange2023/2/3%生成一个10行10列的随机矩阵,其元素服从[0,1]上的均匀分布>>x=rand(10);%把矩阵x写入文件examp02_15.xls的第2个工作表中的单元格区域D6:M15,并返回操作信息>>[s,t]=xlswrite('examp02_15.xls',x,2,'D6:M15')s=1t=message:''identifier:''【例2.4-1】生成一个10×10的随机数矩阵,将它写入Excel文件examp02_15.xls的第2个工作表的指定区域2023/2/3>

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论