MATLAB 常用函数

2012年07月10日

1、clc 命令clear command window则只是清理command window 中的内容,而内存中的变量不清除。 clear是清除变量,一般m文件前都要的,不然容易发生变量出错。 另外还有clf清除当前激活的figure。

2、 b=unique(a) 求不同元 b=isnan(a) 判断是否为非数 b=isempty(a) 判断非空 b=sortrows(a,[3 4])%按第三列主要排序,第四列次要排序,升序

3、进制转换

函数名    功能描述
hex2num    十六进制到IEEE标准下浮点数的轮换  
hex2dec    十六进制到十进制的轮换
dec2hex    十进制到十六进制的轮换

4、cputime 显示Matlab启动后所占用的CPU时间;

tic,toc 秒表计时,tic是开始,toc是结束;

clock,etime 前者显示系统时间,后者计算两次调用clock之间的时间差。

eg:

t0 = cputime; 你的程序;time=cputime-t0;
tic; 你的程序;toc;
t0 = clock;你的程序;time = etime(clock, t0);

5、矩阵倒置

若进行上下倒置,则可用函数flipud。

也可以通过函数flipdim等函数实现。

举例:X =[ 1 4 ; 2 5 ; 3 6],则fliplr(x) 则变为 [4 1; 5 2 ; 6 3]。 若flipud(x) 则变为 [3 6; 2 5; 1 4]。

6、setdiff 返回两个向量中的不同元素

c = setdiff(A, B) 返回在A中有,而B中没有的值,结果向量将以升序排序返回。在集合论中,c = A - B。A和B也可以是字符串细胞数组。

c = setdiff(A, B, ‘rows’) 当A和B是具有相同列数的矩阵时,返回A中有而B中没有的那些行。

[c,i] = setdiff(…) 同时返回一个索引向量,如c = a(i) or c = a(i, ![:)] 。

7、交运算函数intersect

intersect:Set intersection of two vectors Syntax

c = intersect(A,B)
c = intersect(A,B,'rows')
[c,ia,ib] = intersect(...)

8、求分位数

w为数据序列,Q1为上四分位值,Q3为下四分位值,计算如下:

 Q1=prctile(w,25);
 Q3=prctile(w,75);
 prctile( )函数实现计算样本的百分位数功能

9、由向量生成网

[X,Y] = meshgrid(x,y)