MATLAB矩阵操作合集

MATLAB矩阵操作合集

矩阵求和用函数sum

  • sum(A): 求A矩阵的列和
  • sum(A,2): 求A矩阵的行和

MATLAB通常优先对矩阵的列进行操作,但是当矩阵只有一行时候,sum(A)求的就是行和了.

矩阵对角线diag

  • diag(A): 以列向量的方式返回矩阵的对角元
  • diag(fliplr(A)): 以列向量方式返回矩阵的副对角元,其中fliplr为将矩阵水平翻转

翻转矩阵fliplr,flipud

  • fliplr(A): 将矩阵水平翻转
  • flipud(A): 将矩阵垂直翻转
  • flipdim(A,dim): 将A矩阵的第dim维翻转,当dim=1等效于flipud,dim=2等效于fliplr

旋转矩阵rot90,

  • rot90(A): 将A矩阵逆时针旋转90度
  • -

矩阵的逻辑下标

通常情况下, 我们需要对一个矩阵的元素进行区分取舍, 比如只留下矩阵中的质数, 或者只留下向量中的整数等等, 这样就需要用到逻辑下标.

  • 对于向量
    例如x = [2.1 1.7 1.6 1.5 NaN 1.9 1.8 1.5 5.1 1.8 1.4 2.2 1.6 1.8];
    我们只希望留下向量中的有限数, 则x = x(isfinite(x)). 其中isfinite函数对x中的每个元素判断是不是有限的数,生成一个由0和1组成的向量, 向量的长度跟x相同, 然后为0的地方去掉, 为1的地方留下, 则结果为:
    x =
    2.1 1.7 1.6 1.5 1.9 1.8 1.5 5.1 1.8 1.4 2.2 1.6 1.8
  • 对于矩阵
    同样是0的去掉, 1的留下,但是矩阵中将需要去掉的元素改成0, 而不能像在向量中那样直接剔除

你可能感兴趣的:(MATLAB)