matlab矩阵⽣成与基本操作⼀矩阵的⽣成
1、单位矩阵
eye(n)⽣成n*n的单位矩阵
eye(n,m)⽣成n*m的单位矩阵
eye(size(B))⽣成与B同样⼤⼩的单位矩阵
2、全1矩阵
ones(n)
ones(n,m)
ones(size(A))
ones(1,2)⽣成⼀⾏两列的全⼀矩阵
与1类似
3、全0矩阵
⽤法同2
4、随机数矩阵
rand(n)⽣成n*n随机⽅阵,其他类似于2
5、randn
⽣成元素为正态分布随机数的矩阵,⽤法同4
6、线性间隔向量的⽣成
logspace(a,b)⽣成由50个10^a 到10^b之间的对数间隔点组成的⾏向量
logspace(a,b,n)⽣成由n个10^a 到10^b之间的对数间隔点组成的⾏向量
logspace(a,pi)⽣成由n个10^a 到pi之间的对数间隔点组成的⾏向量`
7、分块对⾓矩阵
blkdiag(a,b,c)⽣成由a,b,c构成的分块对焦矩阵
8、连接矩阵
cat(d,a,b,c)⽣成由a,b,c组成的d维矩阵
9、对⾓矩阵
diag
matlab生成随机数10、左右调换
fliplr(A)把A矩阵左右调换
flipud(A)上下调换
rot90(B)把B逆时针旋转90度
11、⽣成下三⾓矩阵
tril(B)⽣成矩阵B的下三⾓矩阵
tirl(B,k)⽣成B的第k条对⾓线的下三⾓矩阵k=0时⼆者作⽤相同
triu则是上三⾓
12、⽣成伴随矩阵
compan(A)
13、⽣成魔⽅矩阵
magic(n)
⼆、矩阵的操作
cat指定⽅向上合并矩阵
horzcat⽔平⽅向上合并矩阵
vertcat竖直⽅向上合并矩阵
repmat通过复制构造新矩阵
blkdiag通过已知矩阵构造对⾓矩阵
具体使⽤⽅法请参考相关⼿册或⽹页三、矩阵信息的获取size获取各个⽅向长度
length获取个⽅向长度的最⼤值
ndims获取矩阵维数
numel  获取矩阵元素个数
四、查询元素数据类型class返回数据类型
isa是否为指定数据类型
ischar
isinteger
isfloat
islogical
isnumeric
isreal是否为实数
isstruct是否为结构体类型
isempty是否为空矩阵
isscalar是否为标量
issparse是否为稀疏矩阵
isvector是否为⽮量
五、矩阵结构的改变
reshape重排矩阵元素
rot90旋转矩阵
fliplr以竖直⽅向为轴做镜像
flipud以⽔平⽅向为轴做镜像
flidim以制定轴为⽅向为轴做镜像
transpose转置
ctranspose共轭转置
六、对字符串的操作
字符串需要⽤单引号括起来,在合并时可以使⽤strcat()函数和合并符号‘[]’创建新的字符串。注意strcat在合并时会把串尾部的空格删除,⾸部的空格则不删除,如果要保留空格可以使⽤矩阵合并符号实现。在构造⼆维字符串数组时要保证每⾏具有相同的长度。不过不相同则需要添加空格实现。如果利⽤char()创建字符串数组则不必担⼼每⾏长度是不是相同,该函数会⾃动控制。
字符串的⽐较有下⾯的⼀些函数
strcmp⽐较字符串是否相等
strncmp⽐较指定位置的字符是否相同
strcmpi与上⾯的strcmp相同,但是忽略⼤⼩写
strncmpi与strncmp相同,只是忽略⼤⼩写
在对字符串运⽤关系运算符时要求两个字符串具有相同的长度,或者其中之⼀为标量
如:
str1='campus';
str2='camera';
vs=str1==str2;
结果:
vs=1 1 1 0 0 0
待更新

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。