matlab 去掉细节,Matlab学习细节

1.nargin用来判断输入变量个数,nargout用来判断输出变量的个数。

if nargin == 0

error('You must supply the mixed data as input argument.');

end

2.size返回行数和列数

s=size(A)     % 行数

[r,c]=size(A)   %行数,列数

s=size(A,1) % 行数

s=size(A,2) % 列数

3.length 返回矩阵最大的长度

length(size(A))  如果是2行3列的话,那么length(size(A)) == 3

4.ndims(a)返回矩阵a的维度

即length(size(A))

ndims([1,2,3;4,5,6]) == 2

5.isnan(A) ,返回一个和A维度相同的数组,如果对应位置是NaN(非数值)的话,那么其对应位置逻辑为1,否则为0。如果对应位置是虚数,那么实部和虚部皆为NaN的话,那么逻辑为1,皆不为NaN的话,那么逻辑为0

6.any(A),判断是否存在非零元素,如果A的元素都是0,返回false,只要存在非零元素,返回true。忽略NaN(当成0)。

any(A,dim)  : any(A,1) 检验每列中是否存在非0元素,any(A,2)检验每行中是否存在非0元素。

7.all(A),判断所有元素是否非零,如果A所有元素都非0,返回true,如果存在0元素,返回false

8.mean(A)返回沿数组不同维的元素的平均值

如果A是一个向量,mean(A)返回A中各个元素的平均值

如果A是一个矩阵,mean(A)将每列当成向量,返回一个包含每列向量的平均值的行向量

如果A是一个多维数组,mean(A)将数组的第一个非单一维的值看成一个向量,返回每个向量的平均值

mean(A,dim)      dim == 1 则返回每列的平均值, dim == 2 则返回每行的平均值

9.ones()

Y = ones(n) 返回一个 n*n的元素都为1的矩阵

Y = ones(m,n) 或者Y = ones[m n]返回一个 m*n的元素都为1的矩阵

Y = ones(size(A)) 返回一个与A相同维数的大小为1的矩阵

Y = ones(m,n,classname)或者Y  = ones([m,n],classname)返回数据类型都为classname的矩阵,元素都为1

classname:'double', 'single', 'int8', 'uint8', 'int16', 'uint16', 'int32', 'uint32', 'int64', or 'uint64'。

10.cov(A)返回一个协方差矩阵

如果A为一个向量,那么cov(A)返回x中元素的方差

如果A为一个矩阵,并且各行为观测值,各列为变量的矩阵,cov(A)计算A的协方差。

diag(cov(A))   包含各列的方差的向量

sqrt(cov(A))    包含标准差的向量

eg:

考虑A = [-1 1 2 ; -2 3 1 ; 4 0 3],对A每一列求方差:

v = diag(cov(A))'

v =

10.3333 2.3333 1.0000

比较v和协方差C:

C=cov(A)

C =

10.3333 -4.1667 3.0000Matlab中文论坛

-4.1667  2.3333 -1.5000

3.0000 -1.5000 1.0000

对角元素C(i,i)代表A中每一列的方差,非对角元素代表列i和列j的协方差。

11.[V,D] = eig(A) 计算矩阵A的特征值D和特征矩阵V,满足A*V=V*D,D是A的规范形式:主对角线的元素是矩阵A的特征值的对角矩阵

12.sum(A)返回数组A不同维数的总和

如果A是一个向量,sum(A)返回A中各个元素的总和

如果A是一个矩阵,sum(A)将每列当成向量,返回一个包含每列向量的总和的行向量

如果A是一个多维数组,sum(A)将数组的第一个非单一维的值看成一个数组,返回一个行向量数组

13.flipud(A) 对矩阵A进行关于水平轴上下翻转。

eg:

例一:A是一个3×2的矩阵

A =

1 4

2 5

3 6

flipud(A)

ans =

3 6

2 5

1 4

例二:A是一个列向量

A =

3

5

7

flipud(A)

ans =

7

5

3

例三:A是一个行向量

A =

3 5 7

flipud(A)

ans =

3 5 7

14.inv(A) 返回方阵A的逆矩阵。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值