这是第三节
# 矩阵计算
>> A = [1 2;3 4;5 6];
>> B = [7 8;9 10;11 12];
>> C = [1 1;2 2];
# 矩阵A ✖ 矩阵C
>> A*C
ans =
5 5
11 11
17 17
# 矩阵A与矩阵B相同位置的元素相乘
# 运算符 . 一般都是表示元素运算
>> A .* B
ans =
7 16
27 40
55 72
#让A中的每个元素进行乘方操作
>> A .^ 2
ans =
1 4
9 16
25 36
# 求倒数
>> 1 ./ A
ans =
1.00000 0.50000
0.33333 0.25000
0.20000 0.16667
# 求对数
>> log(A)
ans =
0.00000 0.69315
1.09861 1.38629
1.60944 1.79176
# 以A中元素为指数的幂运算
>> exp(A)
ans =
2.7183 7.3891
20.0855 54.5982
148.4132 403.4288
>> -A
ans =
-1 -2
-3 -4
-5 -6
# 求所有元素的绝对值
>> abs(-A)
ans =
1 2
3 4
5 6
#相当于 C + ones(length(C))
>> C + 1
ans =
2 2
3 3
# 矩阵转置
>> A'
ans =
1 3 5
2 4 6
# 求矩阵中最大元素及其下标
# 注意:如果是对矩阵求max,求的是矩阵每一列的最大值
>> val = max(A)
val =
5 6
>> val = max([1;2;3])
val = 3
>> [val,ind] = max(A)
val =
5 6
ind =
3 3
>> [val,ind] = max([1;2;3])
val = 3
ind = 3
#对向量的逻辑判断
>> a = [3 5 9]
a =
3 5 9
>> a < 7
ans =
1 1 0
# 返回下标
>> find(a < 7)
ans =
1 2
# magic返回一个幻方矩阵(任意行列对角线的元素之和相同)
>> a = magic(3)
a =
8 1 6
3 5 7
4 9 2
>> a = [4 5 6.5]
a =
4.0000 5.0000 6.5000
# 求所有元素之和
>> sum(a)
ans = 15.500
# 求所有元素之积
>> prod(a)
ans = 130
# 对所有元素向下取整
>> floor(a)
ans =
4 5 6
# 对所有元素向上取整
>> ceil(a)
ans =
4 5 7
# 取两个随机3X3矩阵中相同位置的较大值 组成的随机矩阵
>> max(rand(3),rand(3))
ans =
0.31437 0.43204 0.60883
0.18035 0.59451 0.95844
0.70263 0.65017 0.40207
>> A = magic(3)
A =
8 1 6
3 5 7
4 9 2
#根据矩阵A的第一维度(列)取最大值
>> max(A,[],1)
ans =
8 9 7
#根据矩阵A的第二维度(行)取最大值
>> max(A,[],2)
ans =
8
7
9
# 求矩阵最大元素
ٴ>> max(max(A)) %等价于max(A(:))
ans = 9
# 求幻方对角线元素之和
>> sum(sum(magic(9).*eye(9)))
ans = 369
# flipud的功能是让矩阵垂直翻转
>> sum(sum(magic(9).*flipud(eye(9))))
ans = 369
>> A = magic(3)
A =
8 1 6
3 5 7
4 9 2
# 求A的逆矩阵
>> pinv(A)
ans =
0.147222 -0.144444 0.063889
-0.061111 0.022222 0.105556
-0.019444 0.188889 -0.102778
网友评论