Matlab datamanager 函数.docx
《Matlab datamanager 函数.docx》由会员分享,可在线阅读,更多相关《Matlab datamanager 函数.docx(26页珍藏版)》请在冰豆网上搜索。
Matlabdatamanager函数
版本:
matlab2010a
零散的Matlab函数相关用法
目录:
1.iofun-ja-第二个文件1
2.iofun-ja-第七个文件2
3.iofun-ja-第八个文件2
4.iofun-ja-第九个文件3
6.Iofun-ja-第十二个文件4
8.iofun-ja-第十四个文件5
9.iofun-ja-第十五个文件6
10.iofun-ja-第十六个文件6
11.iofun-ja-第十七个文件6
12.iofun-ja-第十八个文件7
13.iofun-ja-第十九个文件8
14.iofun-ja-第二十个文件9
15.iofun-ja-第二十一个文件9
16.iofun-ja-第二十二个文件9
17.iofun-ja-第二十三个文件11
18.iofun-ja-第二十四个文件11
19.iofun-ja-第二十五个文件12
20.iofun-ja-第二十六个文件12
21.iofun-ja-第二十七个文件13
22.iofun-ja-第二十八个文件14
23.iofun-ja-第二十九个文件14
24.iofun-ja-第二十九个文件14
25.iofun-ja-第三十三个文件15
26.iofun-ja-第三十四个文件16
28.iofun-ja-第四十三个文件17
29.iofun-ja-第四十四个文件17
30.iofun-ja-第四十八个文件18
1.iofun-ja-第二个文件
clc
清空命令窗口的所有输入和输出,给你一个干净的界面。
使用clc以后,你不能在滚动条来查看过去的函数情况,但是你可以在命令历史中使用向上的箭头来查看这些函数《Simulink与信号处理》
《Simulink与信号处理》
相关函数
clear,clf,close,home
2.iofun-ja-第七个文件
CSVREAD有多种调用方法《Simulink与信号处理》
第一种:
M=CSVREAD('FILENAME'),直接读取csv文件的数据,并返回给M,
这时要求整个csv文件内容全部为用逗号隔开的数字,不能用其他字符。
第二种:
M=CSVREAD('FILENAME',R,C),读取csv文件中从第R-1行,第C-1列
的数据开始的数据,这对带有头文件说明的csv文件(如示波器等采集的文件)的
读取是很重要的。
《Simulink与信号处理》
第三种:
M=CSVREAD('FILENAME',R,C,RNG),其中RNG=[R1C1R2C2],读取
左上角为索引为(R1,C1),右下角索引为(R2,C2)的矩阵中的数据。
www
Jcsvwrite(filename,M)
3.iofun-ja-第八个文件
将矩阵M写入以逗号分隔数值的、名称为finename文件中。
finename的输入是以单引号括起来的字符串。
csvwrite(filename,M,row,col)
从名称为filename文件的指定行和列的偏移值后开始写入矩阵M开始偏移。
行和列参数基础是零,因此该行=0和C=0指定文件中的第一个值。
备注
csvwrite没有线终止每一个换行符和回车。
csvwrite写入最高的5位有效数字。
如果您需要更精确,具有精度参数使用dlmwrite。
csvwrite不接受输入CELL阵列矩M米为一个单元阵列出口仅包含数字数据,使用cell2mat矩阵转换为数字的单元格,然后再调用csvwrite数组。
CELL阵列输出混合字母和数字数据,其中每个单元格中包含一个元素,您可以创建一个Excel电子表格(如果你的系统有安装Excel)使用xlswrite。
对于所有其他情况下,您必须使用低一级的输出函数来写你的数据。
欲了解更多信息,请参阅导出到一个单元格数组文本文件在MATLAB数据导入和导出文件。
应用举例编辑本段回目录
下面的例子利用矩阵M创建了一个由逗号分隔数值的文件
m=[3691215;510152025;...
714212835;1122334455];
csvwrite('csvlist.dat',m)
typecsvlist.dat3,6,9,12,15
5,10,15,20,25
7,14,21,28,35
11,22,33,44,55www.iLoveM
下面的例子将矩阵写入文件,列的偏移值为2:
csvwrite('csvlist.dat',m,0,2)
typecsvlist.dat
,3,6,9,12,15
,5,10,15,20,25
,7,14,21,28,35
,11,22,33,44,55《Simulink与信号处理》
相关函数
csvread,dlmwrite,xlswrite,fileformats,importdata,uiimport
4.iofun-ja-第九个文件
data=daqread('filename')
[data,time]=daqread(...)
[data,time,abstime]=daqread(...)
[data,time,abstime,events]=daqread(...)
[data,time,abstime,events,daqinfo]=daqread(...)
data=daqread(...,'Param1',Val1,...)book.iLoveM
daqinfo=daqread('filename','info')
《Simulink与信号处理》
描述
data=daqread('filename')
读取数据采集工具箱(.daq)所有的文件由filename指定的数据。
daqread返回数据,M——n个数据矩阵,其中m为样本数,n是通道数量。
如果数据包括来自多个数据触发器,每个触发器的数据是由一个NaN的分离。
如果您设置OutputFormat属性tscollection,一时间序列集合对象daqread回报。
见下文以获取更多信息。
[data,time]=daqread(...)《Simulink与信号处理》
返回时间/值对。
时间是M——1向量,与相同长度的数据,包含每个样本相对时间。
相对时间测量方面的第一个触发器发生。
[data,time,abstime]=daqread(...)
《Simulink与信号处理》
返回第一个触发绝对时间。
abstime返回为一个时钟向量。
[data,time,abstime,events]=daqread(...)
返回的事件日志。
事件是一个结构,它包含事件的信息。
如果指定任theSamples,时间,或触发器参数(见下文),事件的结构只包含指定的事件。
[data,time,abstime,events,daqinfo]=daqread(...)
返回一个结构,daqinfo,包含两个字段:
ObjInfo和的hwinfo。
ObjInfo是一个结构,它包含属性名称/值对和财产的hwinfo是一个结构,它包含硬件的信息。
整个事件日志中返回到daqinfo.ObjInfo.EventLog。
data=daqread(...,'Param1',Val1,...)
指定返回的数据量以及数据的格式,该样品,时间和触发器属性是相互排斥的,这就是,无论是样品,触发器或时间可以在一次界定。
daqinfo=daqread('filename','info')
返回元数据在daqinfo结构文件,而不会产生阅读从文件中的数据以及开销。
该daqinfo结构包含两个字段:
daqinfo.ObjInfo
一个结构,它包含参数的数据采集/值对象,用于创建该文件,文件名。
注:
用户数据属性的值是无法恢复。
book.iLoveM
daqinfo.HwInfo
一个结构,它包含硬件的信息。
整个事件日志中返回到daqinfo.ObjInfo.EventLog。
5.Iofun-ja-第十一个文件
M=dlmread(filename)
M=dlmread(filename,delimiter)
M=dlmread(filename,delimiter,R,C)
M=dlmread(filename,delimiter,range) www.iLoveM
描述
M=dlmread(filename)
《Simulink与信号处理》
从ASCII码分隔数值数据读取文件的文件名输出矩阵M的文件名输入单引号的字符串。
分隔符分隔数据元素是推断该文件的格式。
逗号(,)是默认的分隔符。
M=dlmread(filename,delimiter)
《Simulink与信号处理》
读取数值数据的ASCII分隔文件的文件名,使用指定的分隔符。
使用\t来指定一个标签分隔符。
注意 当一个分隔符是从文件格式推断,连续空格被视为一个单一的分隔符。
与此相反,如果一个分隔符分隔指定的输入,任何重复的字符 分隔符作为一个单独的分隔符处理。
《Simulink与信号处理》
M=dlmread(filename,delimiter,R,C)www.iLoveM
读取数值数据的ASCII分隔文件的文件名,使用指定的分隔符。
R和C的值指定的行和列的位置文件中左上角的数据。
R和C基础是零,因此使得R=0,C=0的指定文件中的,这是左上角第一个值。
Matlab中文论坛
注意dlmread只读取数字数据。
该文件被读取可能包含非数值数据,但这种非数值数据的范围之内不能将被导入。
M=dlmread(filename,delimiter,range)《Simulink与信号处理》
读取指定的range=[R1C1R2C2],其中(R1,C1)的是上左上角的数据被读取和(R2,C2)的右下角。
您还可以指定范围使用电子表格符号,如range='A1..B7'. Matlab中
6.Iofun-ja-第十二个文件
1.dlmwrite(filename,M)
使用默认的分隔符(')将矩阵M写入ASCII格式的文件中。
在目标文件filname中,数据是从第一行的第一列开始写的。
输入的filename是使用单引号括起来的字符串。
2.dlmwrite(filename,M,'D')www.iLoveM
将矩阵M写入一个ASCII格式的文件中,使用分隔符D来分割矩阵的元素。
在目标文件filname中,数据是从第一行的第一列开始写的。
逗号'是默认的分隔符,使用\t来产生制表符分割的文件。
3.dlmwrite(filename,M,'D',R,C)book.iLoveM
将矩阵M写入一个ASCII格式的文件中,使用分隔符D来分割矩阵的元素。
在目标文件filname中,数据是从第R行的第C列开始写的,R和C从0开始,因此R=0,C=0指定了文件中的第一个数值,即左上角的位置。
4.dlmwrite(filename,M,'attrib1',value1,'attrib2',value2,...)
是下面所示的替代语法,在其中用户可以在参数列表中指定多个属性-数值对。
每个属性后面必须跟一个相应的值《Simulink与信号处理》
此表显示的值时可以使用换行设置属性。
5.dlmwrite(filename,M,'-append')book.iLoveM
将矩阵数据追加到文件的末尾。
如果你不指定''-append',dlmwrite覆盖文件中的任何现有数据。
7.dlmwrite(filename,M,'-append',attribute-valuelist)
接受一个属性值对列表。
用户可以将'-append'标志放在属性-数值对之间,但不能放在属性和它的值的中间。
7.iofun-ja-第十三个文件
fclose(fileID)
fclose('all')
status=fclose(...)
status=fclose(fileID)
如果由fileID所指示的文件已经打开,则关闭它。
如果成功则返回0,否则返回-1。
fileid是一个从fopen函数得到的整数文件标识符。
如果fileID不代表一个打开的文件,或其值等于0,1,或2,fclose函数产生错误信息。
fclose('all')book.iLoveM
关闭所有打开的文件。
status=fclose(...)
返回一个0状态时,关闭操作是成功的。
否则,它返回-1。
《Simulink与信号处理》
8.iofun-ja-第十四个文件
status=feof(fileID)
如果由fileID所指示的文件的末尾指针被设置,则返回1,否则返回0。
fileid是一个从fopen函数获得的整数文件标识符。
应用举例
打开bench.dat文件,一次读取文件中的一个字符,将结果保存到一个数组中:
fid=fopen('bench.dat');
k=0;
while~feof(fid)
curr=fscanf(fid,'%c',1);
if~isempty(curr)
《Simulink与信号处理》
k=k+1;
benchstr(k)=curr;
end
end
fclose(fid); book.iLoveM
9.iofun-ja-第十五个文件
message=ferror(fileID)
[message,errnum]=ferror(fileID)
[...]=ferror(fileID,'clear')
book.iLoveM
描述
message=ferror(fileID)www.iLoveM
以最近的文件在我指定的文件/O操作返回的错误信息。
如果操作成功,消息是一个空字符串。
fileid是一个整数文件标识符从fopen获得或保留的标准输入一个标识符(0),标准输出
(1),或标准错误
(2)。
《Simulink与信号处理》
[message,errnum]=ferror(fileID)book.iLoveM
返回错误号。
如果最新的文件I/O操作是成功的,errnum0。
负错误号对应MATLAB的错误信息。
正错误号对应的C库的错误信息。
[...]=ferror(fileID,'clear')
清除指定的文件错误指示器。
《Simulink与信号处理
10.iofun-ja-第十六个文件
tline=fgetl(fid)
返回由文件标识符fid指示的文件的下一行。
如果fgetl遇到文件结束指示符,则返回-1。
对于fid的完整描述请参考fopen函数。
fgetl函数常用于含有文件换行符的文件。
MATLAB软件使用与文件相关联的编码方案来读取字符。
更多信息请参考fopen函数。
返回字符串tline中不包含文件换行符。
要得到文件换行符,请使用fgets函数。
应用举例
读取和显示文件fgetl.m文件的每一行:
fid=fopen('fgetl.m');
while 1
tline = fgetl(fid);
if ~ischar(tline), break, endwww.iLoveM
disp(tline)
end
fclose(fid);
11.iofun-ja-第十七个文件
tline=fgets(fileID)
tline=fgets(fileID,nchar)
Matlab中文论坛
描述
tline=fgets(fileID)《Simulink与信号处理》
读取指定的文件的下一行,包括换行符。
fileid是一个整数文件标识符从fopen获得。
tline是一个文本字符串,除非该行只包含结束的文件标记。
在这种情况下,tline是数字值-1。
与fgets读取字符的编码方案使用与该文件相关联。
要指定的编码方案,使用fopen。
book.iLoveM
tline=fgets(fileID,nchar) www.iLoveM
最多返回下一行的NCHAR字符。
tline不包括后换行符或结束的文件标记的任何字符。
《Simulink与信号处理》
应用举例
读取和显示文件fgets.m。
由于与fgets不断换行符和disp添加一个换行符,此代码显示与双间距文件:
fid=fopen('fgets.m');
tline=fgets(fid);
whileischar(tline)
disp(tline)
tline=fgets(fid);
end
fclose(fid);
比较这些结果向fgetl例子,它取代了与fgetl与fgets调用。
12.iofun-ja-第十八个文件
M=filemarker
函数返回一个用于分隔文件和文件内的函数名称的字符。
Matlab中文论坛
应用举例
在MicrosoftWindows平台上,filemarker返回“>'字符:
filemarker
ans=
>
你可以在任何平台上使用以下命令来获取在pdepe.m中定义的子函数pdeodes的帮助文本:
helptext=help(['pdepe'filemarker'pdeodes'])
helptext=
PDEODESAssemblethedifferenceequationsand
evaluatethetimederivativefortheODEsystem. www.iLoveM
你可以使用filemarker字符显示在MATLAB的程序文件,你要设置断点的位置,例如。
在所有平台上,如果您需要两个嵌套功能区分具有相同的名称,使用正斜杠(/)字符表示路径的一个函数的特定实例。
举例来说,假定myfile.m包含下面的代码:
functionx=A(p1,p2)
...
functiony=B(p3)
...
end
functionm=C(p4)
...
end
end
functionz=C(p5)
...
functiony=D(p6)
...
end
为了表示你要设置一个断点在函数y于函数嵌套X,使用Windows平台下面的命令:
《Simulink与信号处理》
dbstopmyfile>x/y
为了表示你要设置一个断点,在函数m函数嵌套内使用X在Windows平台下面的命令:
dbstopmyfile>m
在第一种情况,你指定的X/Y因为myfile.m包含一个名为y的两个嵌套函数在第二种情况下,没有必要指定x/M,因为只有M之内myfile.m功能。
《Simulink与信号处理》
13.iofun-ja-第十九个文件
[pathstr,name,ext]=fileparts(filename)
返回路径名,文件名,扩展名和指定文件的版本。
filename是使用单引号括起来的字符串。
返回的文件扩展名ext在其前面有个点(.)。
book.iLoveM
fileparts函数是与平台相关的。
用户可以使用下面的命令来重建文件名:
fullfile(pathstr,[nameext])
应用举例
返回文件的各部分信息
(1)文件完整的路径名为:
file = '\home\user4\matlab\classpath.txt';
【注意】用来分割文件路径名称的字符取决于用户所运行的操作系统。
在Microsoft Windows系统中,使用反斜杠(\)字符作为分隔符。
用户可以使用filesep函数来得到操作系统所支持的分隔符。
例如:
sep = filesep;
file = ['H:
' sep 'user4' sep 'matlab' sep 'classpath.txt'];
file =
H:
\user4\matlab\classpath.txt
(2)使用fileparts函数来得到各部分信息
[pathstr, name, ext, versn] = fileparts(file)《Simulink与信号处理》
pathstr =
\home\user4\matlab
name =
classpath
ext =
.txt
versn =
''
14.iofun-ja-第二十个文件
text=fileread(filename)
《Simulink与信号处理》
描述
text=fileread(filename)Matlab中文论坛
返回字符串作为MATLAB的文件的文件名的内容。
《Simulink与信号处理》
应用举例
fileread在阅读和搜索为参考MATLAB的iofun目录文件Contents.m:
%findthecorrectdirectoryandfile
io_contents=...
fullfile(matlabroot,'toolbox','matlab','iofun','Contents.m');Matlab中文论坛
%readthefile
filetext=fileread(io_contents);
%searchforthelineofcodethatincludes'fileread'
%eachlineisseparatedbyanewline('\n')
expr='[^\n]*fileread[^\n]*';
fileread_info=regexp(filetext,expr,'match');
15.iofun-ja-第二十一个文件
f=filesep返回与操作系统平台相关的文件分割字符。
文件分割符是在路径字符串中分割单个目录的符号。
应用举例
1.在微软Windows平台上创建一个指向iofun文件夹的路径:
iofun_dir=['toolbox'filesep'matlab'filesep'i