梦⁠回⁣从前 2022-03-09 17:55 采纳率: 25%
浏览 1275
已结题

Python的乘法出错问题,operands could not be broadcast together with shapes (3,3) (3,2)


import numpy as np
A = np.array([5, -2])
B = np.array([1, 6, 2, 0, -1, -1])
C = np.array([2, 0, -1, 3, -1, 6])
D = np.array([3, 0, 1, 1, -2, 2, 3, 4, -1])

E = A.reshape((2, 1))
F = B.reshape((3, 2))
G = C.reshape((3, 2))
H = D.reshape((3, 3))

print(-2*E)
print(G + F)
print(4*F - G)
print(np.multiply(H*G))
print(np.dot(G*E))

最后两行总是出错,是个什么原因?(倒数第二行是一个(3,3)(3,2)的矩阵,倒数第一行是一个(3,2)(2,1)的矩阵)

  • 写回答

1条回答 默认 最新

  • 谛凌 2022-03-09 18:02
    关注
    • *是对应位置相乘
    • 你写数字 *矩阵可以,但是最后两行是矩阵 *矩阵了,维度没法对应相乘,就报错了
    • np.multiply(H,G)和H *G是一个意思,表示矩阵点乘

    我看你测试的样子,应该是想测试multiply和dot函数吧,应该写:

    print(np.multiply(H,G))   #这里也会报错,因为维度不匹配
    print(np.dot(G,E))
    

    有帮助麻烦点个采纳~~

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 3月17日
  • 已采纳回答 3月9日
  • 创建了问题 3月9日

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?