NumPy进阶修炼80题 (二)NumPy 基本矩阵操作与运算

21.创建主对角线都是5的5x5矩阵

result = np.diag([5,5,5,5,5])
result

22.交换第一列与第二列

a = result[:,[1,0,2,3,4]]
a

23.交换第一行与第二行

b = result[[0,1,2,3,4],:]
b

23.提取一三行,合并成一个小矩阵

result[[0,2]]

23.提取一三行,并将剩余行合并成一个小矩阵

result[[0,2]]
result = result[[1,3,4]]
result

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(a * b)

29.计算行列式(使用21题生成的矩阵)

np.linalg.det(result)

30.矩阵求逆(使用21题生成的矩阵)

np.linalg.inv(result)

31.将22与23题生成的np.array对象修改为np.matrix对象

a = np.matrix(a)
a
b = np.matrix(b)
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)
new

37.找到new中大于1的元素的位置

np.argwhere(new > 1)

38.将new中大于1的元素修改为9

new[new > 1] = 9
new

39.对new按列求和

np.sum(new,0)

40.对new按行求和

np.sum(new,1)

题目由老师提供,答案由本人结合书籍与网络答案整理完成,仅用于学习交流,如有雷同的侵权事件请联系本人删除,谢谢配合!

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值