数据可视化基础专题(二十五):numpy80题(四)第二期|基本矩阵操作与运算
第二期|基本矩阵操作与运算
import numpy as np
21.创建主对角线都是5的5x5矩阵
result = np.diag([5,5,5,5,5])
result
22.交换第一列与第二列
a = result[:, [1,0,2,3,4]]
23.交换第一行与第二行
b = result[[0,1,2,4,3], :]
24.判断两个矩阵是否有任何元素不同(使用22,23两题得到的矩阵)
print((a == b).all())
25.计算两个矩阵不同元素的个数(使用22,23两题得到的矩阵)
len(np.argwhere(a != b))
26.找到两个矩阵不同元素的位置(使用22,23两题得到的矩阵)
np.argwhere(a != b)
27.矩阵乘法(使用22,23两题得到的矩阵)
np.dot(a,b)
28.矩阵对应元素相乘(使用22,23两题得到的矩阵)
print(np.multiply(a,b)) print('========方法2========') print(a * b) #方法2
29.计算行列式(使用21题生成的矩阵)
np.linalg.det(result)
30.矩阵求逆(使用21题生成的矩阵)
np.linalg.inv(result)
31.将22与23题生成的np.array对象修改为np.matrix对象
a = np.matrix(a)
b = np.matrix(b)
32.计算上一题生成的两个np.matrix格式矩阵的对应元素乘积(对比异同)
np.multiply(a,b)
33.对31题生成的两个np.matrix格式矩阵做矩阵乘法(对比异同)
a * b
34.将两个矩阵按照行拼接
np.hstack((a,b))
35.将两个矩阵按照列拼接
np.vstack((a,b))
36.思考下面代码运行后new的结果
new = np.pad(result,pad_width = 1,constant_values=1)
37.找到new中大于1的元素的位置
np.argwhere(new > 1)
38.将new中大于1的元素修改为9
new[new > 1] = 8
new
39.对new按列求和
np.sum(new, 0)
40.对new按行求和
np.sum(new, 1)
本文来自博客园,作者:秋华,转载请注明原文链接:https://www.cnblogs.com/qiu-hua/p/14729015.html