第一个:
function MyOut=MinFunction(A,MyFlag)
if MyFlag == 1
MyOut = min(A(:));
elseif MyFlag==2
MyOut = sum(A(:)==0);
else
end
第二个:
MyFlag = 1;
MinFunction([0 1 2 3],MyFlag)
MinFunction([0; 1; 2; 3],MyFlag)
MinFunction([0 1; 2 3],MyFlag)
MyFlag = 2;
MinFunction([0 1 2 3],MyFlag)
MinFunction([0; 1; 2; 3],MyFlag)
MinFunction([0 1; 2 3],MyFlag)
unique()函数:去掉矩阵中重复的元素
(1)B = unique(A)
获取矩阵A 的不同元素构成的向量,其中B可能是行向量也可能是列向量,升序排列
(2)B = unique(A,'rows')
获取矩阵A的不同行向量构成的矩阵。
(3) [ C,IA,IC ] = unique(A)\unique(A,'rows')
IA为矩阵C中的元素在矩阵A中的位置,IC为矩阵A中的元素在矩阵C中的位置。
size(A)函数是用来求矩阵的大小的
比如说一个A是一个3×4的二维矩阵:
1、size(A) %直接显示出A大小
输出:ans=
3 4
2、s=size(A)%返回一个行向量s,s的第一个元素是矩阵的行数,第二个元素是矩阵的列数
输出:s=
3 4
3、[r,c]=size(A)%将矩阵A的行数返回到第一个输出变量r,将矩阵的列数返回到第二个输出变量c
输出:r=
3
c=
4
4、[r,c,m]=size(A)
输出:r=
3
c=
4
m=
1
也就说它把二维矩阵当作第三维为1的三维矩阵,这也如同我们把n维列向量当作n×1的矩阵一样
5、当a是一个n维行向量时,size(A)把其当成一个1×n的矩阵,因此size(a)的结果是
ans
1 n
而不是a的元素个数n
6、size(A,n)
如果在size函数的输入参数中再添加一项n,并用1或2为n赋值,则 size将返回矩阵的行数或列数。其中r=size(A,1)该语句返回的是矩阵A的行数, c=size(A,2) 该语句返回的是矩阵A的列数
hist的用法
1n=hist(Y);
默认十个等间隔区间,并返回每个范围内的Y的元素个数作为一行向量
2n=hist(Y,X);
X是一个事先给定的区间划分,统计Y在X这个区间划分下的个数
3n=hist(Y,nbins);
nbins是间隔数,也就是说我们应该统计多少个间隔
4[n,xout]=hist();
返回的参数多了很多,n是每一个区间的个数,xout是区间的中心位置
zeros函数和ones函数
zeros函数——生成零矩阵
ones函数——生成全1阵
fminbnd函数
有约束优化问题,使用fmincon——万能函数
[x,favl,exitflag]=fmincon(fun1,x0,A,B,Aeq,Beq,l,u,fun2)
fun1:目标函数
x0:初始点
Ax<=B(不等式约束)
Aeqx=Beq(等式约束)
l<=x<=u(上下界约束)
fun2:用于非线性约束
fun2的格式为:C(x)<=0;Ceq(x)=0
function [C,Ceq]=fun2(x)
C = ;
Ceq = ;
end
std函数是用来计算标准偏差的一个函数,由于其有不同的参数,我们就用下面的例子进行介绍:
A =
1 2 3
1 1 1
标准差的两种计算公式如下:
std(A):
std(A)函数求解的是最常见的标准差,此时除以的是N-1。
注意:此函数命令不能对矩阵求整体的标准差,只能按照行或者列进行逐个求解标准差,默认情况下是按照列。
在MATLAB主窗口中输入std(A) 回车,结果如下:
输出的是每一列的标准差。
std(A,flag):
这里flag代表的是用哪一个标准差函数,如果取0,则代表除以N-1,如果是1代表的是除以N,
我们在MATLAB主窗口中输入std(A,1) 回车,std(A,0) 回车,可以看到如下结果
std(A,flag,dim):
第三个参数代表的是按照列求标准差还是按照行求标准差,std(A,1,1)代表的是按照列求标准差,std(A,1,2)代表的是按照行求标准差。
在MATLAB主窗口中输入如下命令:std(A,1,1) 敲回车 std(A,1,2) 敲回车
function flag = prime(num)
for i = 2:sqrt(num)
if mod(num, i) == 0
flag = 0
return
end
end
flag = 1
end
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)