1、fgetl
tline=fgetl(fid) 从文件中读取行,删除文件换行符(换行符和回车符)
返回由文件标识符fid指示的文件的下一行。如果fgetl遇到文件结束指示符,则返回-1。对于fid的完整描述请参考fopen函数。fgetl函数常用于含有文件换行符的文件。
2、return语句
return 语句终止当前的命令序列,把控制返回到调用函数或键盘。
3、字符串的比较:
函数strcmp(str1,str2):比较两个字符串是否相同,若相等则返回1值,若不相等则返回0值。
函数strncmp(str1,str2,n): 比较两个字符串的前n个字符是否相同,若相等则返回1值,若不相等则返回0值
4、字符串的查找与替换
函数findstr(‘str1’,’str2’):在字符串str1中查找子串str2,返回str2在str1中的起始位置。
函数strrep(‘str1’,’str2’,’str3’):字符串替换
5、strsplit和strtok
6、左除和右除
\(左除): A\B=inv(A)*B, 其中inv(A)表示A逆阵
/(右除): A/B=A*inv(B)。
7、setdiff
aa=[1 2 2 3 4 5];
bb=[3 6];
cc=setdiff(aa,bb)
运行结果:
cc =
1 2 4 5
参考:
8、intersect
两个向量A,B,C=intersect(A,B)将A与B分量的交集结果存入C.
intersect可以有三个返回值,如图,后两个分别是交集元素在原有集合中的下标:
9、exist() :存在返回值
exist:主要有两种形式,一个参数和两个参数的,作用都是用于确定某值是否存在;
1. b = exist( a)
若 a 存在,则 b = 1; 否则 b = 0;
2. b = exist( 'name', 'kind')
kind 表示 name 的类型,可以取的值为:builtin(内建类型),class(类),dir(文件夹),file(文件或文件夹),var(变量)。
A = exist('name','kind')
返回值的含义如下:
0 不存在则返回值
1 name 可以是变量名,如果存在,返回值
2 函数名、m 文件名,存在则返回值
3 mex 文件、dll 文件,存在则返回值
4 内嵌的函数,存在则返回值
5 p码文件 , 存在则返回值
6 目录,存在则返回值
7 路径,存在则返回值
8 Java class,存在则返回值
示例代码:
前文已经定义变量 ”GPS_DAT“
备注:若出现:~exist(……); 就是将exist(……)的结果取反!
10、取整函数:floor round ceil fix
(1) fix朝零方向取整,如fix(-1.3)=-1; fix(1.3)=1;
(2) floor,顾名思义,就是地板,所以是取比它小的整数,即朝负无穷方向取整;
如floor(-1.3)=-2; floor(1.3)=1;floor(-1.8)=-2,floor(1.8)=1
(3) ceil,与floor相反,它的意思是天花板,也就是取比它大的最小整数,即朝正无穷方向取整;
如ceil(-1.3)=-1; ceil(1.3)=2;ceil(-1.8)=-1,ceil(1.8)=2
(4) round四舍五入到最近的整数;
如round(-1.3)=-1;round(-1.52)=-2;round(1.3)=1;round(1.52)=2。
11、cumsum()
cumsum函数通常用于计算一个数组各行、列的累加值。
格式一:B = cumsum(A)
这种用法返回数组不同维数的累加和。
如果A是一个向量, cumsum(A) 返回一个向量,该向量中第m行的元素是A中第1行到第m行的所有元素累加和;
如果A是一个矩阵, cumsum(A) 返回一个和A同行同列的矩阵,矩阵中第m行第n列元素是A中第1行到第m行的所有第n列元素的累加和;
如果A是一个多维数组, cumsum(A)只对A中第一个非奇异维进行计算。
格式二:B = cumsum(A,dim)
这种调用格式返回A中由标量dim所指定的维数的累加和。
例如:cumsum(A,1)返回的是沿着第一维(各列)的累加和,cumsum(A,2)返回的是沿着第二维(各行)的累加和。
默认是沿着各列进行累加!cumsum(A)=cumsum(A,1)
参考示例:
a=[1 2 3;1 2 3;1 2 3 ;1 2 3];
c=cumsum(a,1)
c =
1 2 3
2 4 6
3 6 9
4 8 12
b=cumsum(a)
b =
1 2 3
2 4 6
3 6 9
4 8 12
c=cumsum(a,2)
c =
1 3 6
1 3 6
1 3 6
1 3 6
12、 diff()
diff函数式用于求导数和差分的.无论是求导数还是差分,其原理是一样的。
示例,具体用法:
(1)前后相邻元素之差
(2)上下相邻行之差
(3)diff(A,1,1) 与 上面类似;即按照行差分
(4)diff(A,1,2),按照列差分
(5)diff(A,2,2)第2个参数为2表示为二阶差分变换.即在diff(A,1,2)的基础上再进行一次列差分变换.
13、numel()
数组中含有的元素个数或某一条件下,元素的个数
语法格式:
n = numel(A);
n= numel(A,条件);
14、unique() 去掉矩阵中重复的元素
用法1:b=unique(a)
释义:取集合a的不重复元素构成的向量
用法2:[c,i,j]=unique(A,'rows')
释义:
%c 返回不同的行
%i 体现c中元素在原向量(矩阵a)中的行数;
释义:%j 体现原向量(矩阵a)在c中的行位置
用法3:[b,i,j]=unique(a)
释义:%返回矩阵A中的不同元素
释义: i体现c中元素在原向量(矩阵a)中的位置;
释义: j体现原向量(矩阵a)在c中的位置
参考链接:matlab中unique函数(参考别人的写的,加上了自己的理解)