美文网首页
matlab中某些函数的用法

matlab中某些函数的用法

作者: 肉肉肉肉_包 | 来源:发表于2019-06-04 08:31 被阅读0次

    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的用法
    1.n=hist(Y);
    默认十个等间隔区间,并返回每个范围内的Y的元素个数作为一行向量

    2.n=hist(Y,X);
    X是一个事先给定的区间划分,统计Y在X这个区间划分下的个数

    3.n=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:初始点

    A*x<=B(不等式约束)

    Aeq*x=Beq(等式约束)

    l<=x<=u(上下界约束)

    fun2:用于非线性约束

    fun2的格式为:C(x)<=0;Ceq(x)=0

    function [C,Ceq]=fun2(x)

    C = ...;

    Ceq = ...;

    end

    相关文章

      网友评论

          本文标题:matlab中某些函数的用法

          本文链接:https://www.haomeiwen.com/subject/hqaezqtx.html