MATLAB基础:4.矩阵计算与处理的常用函数
矩阵计算与处理的常用函数
基本数学运算函数
使用时对矩阵的每一个元素进行运算
特殊矩阵
- 零矩阵:zeros(m,n),zeros(n)生成方阵
- 全1矩阵:ones(m,n)
- 单位矩阵:eye(n)
- 0~1均匀分布的随机矩阵:rand(m,n)
- 均值0,方差1的标准正态分布矩阵:randn(m,n)
其他:
- 魔方矩阵:magic(n)
- 帕斯卡矩阵:pascal(n)
- 范德蒙矩阵:vander
- 希尔伯特矩阵:hilb
- 托普利兹矩阵:toeplitz
矩阵变换
- 创建对角矩阵或获取矩阵的对角元素:diag(A)
D=diag(v):生成一个对角矩阵,对角元素为v(向量)
D=diag(A,k):生成一个对角矩阵,对角元素为A,对角线为k,主对角线k为0,k<0为下对角线,k>0为上对角线
x=diag(D):获取矩阵的对角元素(向量)
x=diag(A,k):获取矩阵的对角元素(向量),对角线为k - 三角阵:
上三角阵:triu(A,k),返回上三角阵,k为下对角线偏移量,默认为0
下三角阵:tril(A,k) - 矩阵重构:
B=reshape(A,size)使用矩阵A重构为B,size为大小向量
例如:B=reshape(A,[2,3]),size的值必须与A的元素个数相同
按列存储
C=reshape(A,m,n,[]) - 矩阵的转置
A.'矩阵的转置
A’矩阵的共轭转置,等价于B=conj(A).‘或B=conj(A.’)
对于实数没有区别 - 矩阵的旋转
rot90(A):对矩阵A进行逆时针旋转90度
rot90(A,k):对矩阵A进行逆时针旋转k*90度
flipud(A):上下翻转矩阵A
fliplr(A):左右翻转矩阵A - 变成列向量
A(: )
矩阵信息的获取
-
矩阵的维数:
sz=size(A):返回一个行向量,其元素是A的相应维度的长度
szdim=size(A,dim):返回A在dim维度的长度 -
获取矩阵最大维度的长度:
length(A) -
获取矩阵元素的个数:
numel(A) -
获取矩阵维度数目:
ndims(A) -
获取字符串的长度:
strlength(str)
矩阵的关系运算
all、any、exist、find、isempty
- all:判断矩阵中的元素是否全部为非0,返回一个逻辑值
- any:判断矩阵中是否存在非0元素,返回一个逻辑值
- exist:判断矩阵中是否存在某元素,返回一个逻辑值
- find:返回矩阵中非0元素的索引,返回一个行向量,每行包含一个非0元素的索引
- isempty:判断矩阵是否为空,返回一个逻辑值
可以加条件
稀疏矩阵
仅存储非0元素的值和位置,按列存储
将矩阵转换为稀疏矩阵:sparse(A)
稀疏矩阵转换为矩阵:full(A)
原文地址:https://blog.csdn.net/m0_75029367/article/details/142210235
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!