size 描述矩阵的大小
length 最大维的长度
ndims 维数
numel 元素个数
isempty 判断是否为空
ismatrix 判断是否为矩阵
isscalar 判断是否是一个标量
isvector 判断是否是一个向量
issorted 判断是否已排序
编号索引
线性索引
冒号
end
排序 sort/sortrows
转置 rot90/transpose
翻转 fliplr/flip/flipud
重塑 reshape/squeeze
A=rand(3,5)
A =
0.8147 0.9134 0.2785 0.9649 0.9572
0.9058 0.6324 0.5469 0.1576 0.4854
0.1270 0.0975 0.9575 0.9706 0.8003
B=size(A)
B =
3 5
3行5列
B=length(A)
B =
5
最大维的长度
ndims(A)
ans =
2
维数:矩阵是二维
numel(A)
ans =
15
元素个数 3X5
isempty(A)
ans =
logical
0
A不是空矩阵
ismatrix(A)
ans =
logical
1
A是矩阵
D=repmat(3,size(A))
D =
3 3 3 3 3
3 3 3 3 3
3 3 3 3 3
把元素3复制成A的大小的矩阵
A=rand(1,10)
A =
列 1 至 9
0.1419 0.4218 0.9157 0.7922 0.9595 0.6557 0.0357 0.8491 0.9340
列 10
0.6787
B=rand(3,4)
B =
0.7577 0.6555 0.0318 0.0971
0.7431 0.1712 0.2769 0.8235
0.3922 0.7060 0.0462 0.6948
sort(A)
ans =
列 1 至 9
0.0357 0.1419 0.4218 0.6557 0.6787 0.7922 0.8491 0.9157 0.9340
列 10
0.9595
sort默认从低到高排序(一维)
sort(B)
ans =
0.3922 0.1712 0.0318 0.0971
0.7431 0.6555 0.0462 0.6948
0.7577 0.7060 0.2769 0.8235
B是二维,sort(B)是默认每列从低到高排列
sort(B,2)
ans =
0.0318 0.0971 0.6555 0.7577
0.1712 0.2769 0.7431 0.8235
0.0462 0.3922 0.6948 0.7060
指定是第二列排序
sort(B,2,‘descend’)
ans =
0.7577 0.6555 0.0971 0.0318
0.8235 0.7431 0.2769 0.1712
0.7060 0.6948 0.3922 0.0462
可以指定升序或降序
sortrows(A)
ans =
列 1 至 9
0.1419 0.4218 0.9157 0.7922 0.9595 0.6557 0.0357 0.8491 0.9340
列 10
0.6787
sortrows(B)
ans =
0.3922 0.7060 0.0462 0.6948
0.7431 0.1712 0.2769 0.8235
0.7577 0.6555 0.0318 0.0971
默认第一列元素排序
sortrows(B,3)
ans =
0.7577 0.6555 0.0318 0.0971
0.3922 0.7060 0.0462 0.6948
0.7431 0.1712 0.2769 0.8235
第三列元素排序
sortrows(B,3,‘descend’)
ans =
0.7431 0.1712 0.2769 0.8235
0.3922 0.7060 0.0462 0.6948
0.7577 0.6555 0.0318 0.0971
sortrows(B,3,‘ascend’)
ans =
0.7577 0.6555 0.0318 0.0971
0.3922 0.7060 0.0462 0.6948
0.7431 0.1712 0.2769 0.8235
flip(B)
ans =
0.3922 0.7060 0.0462 0.6948
0.7431 0.1712 0.2769 0.8235
0.7577 0.6555 0.0318 0.0971
默认上下翻转,第一行变最后一行
B
B =
0.7577 0.6555 0.0318 0.0971
0.7431 0.1712 0.2769 0.8235
0.3922 0.7060 0.0462 0.6948
fliplr(B)
ans =
0.0971 0.0318 0.6555 0.7577
0.8235 0.2769 0.1712 0.7431
0.6948 0.0462 0.7060 0.3922
左右翻转,第一列和最后一列翻转
flipud(B)
ans =
0.3922 0.7060 0.0462 0.6948
0.7431 0.1712 0.2769 0.8235
0.7577 0.6555 0.0318 0.0971
flip(B,2)
2指左右翻转
ans =
0.0971 0.0318 0.6555 0.7577
0.8235 0.2769 0.1712 0.7431
0.6948 0.0462 0.7060 0.3922
rot90(A)
ans =
0.6787
0.9340
0.8491
0.0357
0.6557
0.9595
0.7922
0.9157
0.4218
0.1419
旋转90度
transpose(A)
ans =
0.1419
0.4218
0.9157
0.7922
0.9595
0.6557
0.0357
0.8491
0.9340
0.6787
转置
C=rand(2,6)
C =
0.3171 0.0344 0.3816 0.7952 0.4898 0.6463
0.9502 0.4387 0.7655 0.1869 0.4456 0.7094
D=reshape(C,3,4)
D =
0.3171 0.4387 0.7952 0.4456
0.9502 0.3816 0.1869 0.6463
0.0344 0.7655 0.4898 0.7094
C=rand(2,6)*5
C =
3.7734 3.3985 0.8131 2.4918 1.7019 1.1191
1.3801 3.2755 0.5950 4.7987 2.9263 3.7563
D=mapminmax( C )
D =
1.0000 0.7467 -1.0000 0.1342 -0.3995 -0.7933
-0.6265 0.2753 -1.0000 1.0000 0.1092 0.5041
mapminmax将元素值归一化到-1到1
D=C( : )
D =
3.7734
1.3801
3.3985
3.2755
0.8131
0.5950
2.4918
4.7987
1.7019
2.9263
1.1191
3.7563
(:)将矩阵元素变成向量形式
F=mapminmax(D)
F =
3.7734
1.3801
3.3985
3.2755
0.8131
0.5950
2.4918
4.7987
1.7019
2.9263
1.1191
3.7563
E=mapminmax(D’)
E =
列 1 至 9
0.5122 -0.6265 0.3338 0.2753 -0.8962 -1.0000 -0.0975 1.0000 -0.4734
列 10 至 12
0.1092 -0.7507 0.5041
G=reshape(D,2,6)
G =
3.7734 3.3985 0.8131 2.4918 1.7019 1.1191
1.3801 3.2755 0.5950 4.7987 2.9263 3.7563
G=reshape(E,2,6)
G =
0.5122 0.3338 -0.8962 -0.0975 -0.4734 -0.7507
-0.6265 0.2753 -1.0000 1.0000 0.1092 0.5041
B
B =
0.7577 0.6555 0.0318 0.0971
0.7431 0.1712 0.2769 0.8235
0.3922 0.7060 0.0462 0.6948
B(1,2)
ans =
0.6555
B(6)
ans =
0.7060
线性索引:注意编号顺序
sub2ind(size(B),1,2)
ans =
4
B(sub2ind(size(B),1,2))
ans =
0.6555
sub2ind可以获取编号
A=magic(4)
A =
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
方矩阵且每一行的和相等
A(1,1)+A(1,2)+A(1,3)+A(1,4)
ans =
34
sum(A(1:4,4))
ans =
34
B=A
B =
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
B(1:3:16)
ans =
16 4 7 10 13 1
冒号获取元素,从1到16个元素隔3-1个取出一个
B(1:3:16)=-10
B =
-10 2 3 -10
5 11 -10 8
9 -10 6 12
-10 14 15 -10
A( : )
ans =
16
5
9
4
2
11
7
14
3
10
6
15
13
8
12
1
B(1:3:end)=-10
B =
-10 2 3 -10
5 11 -10 8
9 -10 6 12
-10 14 15 -10
不知道有多少个元素的情况下,可以用end