numpy中的数组和矩阵乘法

numpy中的乘法主要分为数组和矩阵两种,不同数据类型的乘法规则不同,总结一下
(1). *;
(2). np.multiply;
(3). np.dot;
三种不同的乘法。

目录

  1. 结论
  2. 数组乘法
  3. 矩阵乘法

1. 结论

直接乘:数组为对应元素乘,矩阵为矩阵乘法;

multiply:都是对应元素相乘;

dot:都是矩阵乘法

2. 数组乘法

结论为:直接乘是对应元素相乘,multiply为对应元素相乘,dot为矩阵乘法规则。

import numpy as np

print('np.array 的三种乘法总结')
a = np.array([[1, 2], [3, 4]])
b = np.array([[3, 4], [5, 6]])
print('array a = \n{}'.format(a))
print('array b = \n{}'.format(b))
print('=========================')
print('array 直接乘的结果为:对应元素相乘')
print('a*b = \n{}'.format(a*b))
print('=========================')
print('array multiply 相乘的结果为:对应元素相乘')
print('np.multiply(a, b) = \n{}'.format(np.multiply(a, b)))
print('=========================')
print('array dot 相乘的结果为:矩阵乘法')
print('np.dot(a, b) = \n{}'.format(np.dot(a, b)))

输出如下:

np.array 的三种乘法总结
array a = 
[[1 2]
 [3 4]]
array b = 
[[3 4]
 [5 6]]
=========================
array 直接乘的结果为:对应元素相乘
a*b = 
[[ 3  8]
 [15 24]]
=========================
array multiply 相乘的结果为:对应元素相乘
np.multiply(a, b) = 
[[ 3  8]
 [15 24]]
=========================
array dot 相乘的结果为:矩阵乘法
np.dot(a, b) = 
[[13 16]
 [29 36]]

3. 矩阵乘法

结论为:直接乘为矩阵乘法,multiply为对应元素相乘,dot为矩阵乘法。

import numpy as np

print('np.mat 的三种乘法总结')
a = np.mat([[1, 2], [3, 4]])
b = np.mat([[3, 4], [5, 6]])
print('mat a = \n{}'.format(a))
print('mat b = \n{}'.format(b))
print('=========================')
print('mat 直接乘的结果为:矩阵乘法')
print('a*b = \n{}'.format(a*b))
print('=========================')
print('mat multiply 相乘的结果为:对应元素相乘')
print('np.multiply(a, b) = \n{}'.format(np.multiply(a, b)))
print('=========================')
print('mat dot 相乘的结果为:矩阵乘法')
print('np.dot(a, b) = \n{}'.format(np.dot(a, b)))

输出如下:

np.mat 的三种乘法总结
mat a = 
[[1 2]
 [3 4]]
mat b = 
[[3 4]
 [5 6]]
=========================
mat 直接乘的结果为:矩阵乘法
a*b = 
[[13 16]
 [29 36]]
=========================
mat multiply 相乘的结果为:对应元素相乘
np.multiply(a, b) = 
[[ 3  8]
 [15 24]]
=========================
mat dot 相乘的结果为:矩阵乘法
np.dot(a, b) = 
[[13 16]
 [29 36]]
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值