返回顶部
首页 > 资讯 > 后端开发 > Python >ValueError: matmul: Input operand 1 has a mismatch in its core dimension 0 解决办法
  • 901
分享到

ValueError: matmul: Input operand 1 has a mismatch in its core dimension 0 解决办法

numpypython 2023-10-23 22:10:50 901人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

【报错】使用 python numpy包编程时出现 ValueError: matmul: Input operand 1 has a mismatch in its core dimension 0

【报错】使用 python numpy包编程时出现 ValueError: matmul: Input operand 1 has a mismatch in its core dimension 0, with gufunc signature (n?,k),(k,m?)->(n?,m?) 错误提示。很多问答说的是scipy包的版本过高,但尝试重装低版本的包还是不能解决问题。

【原因】程序报错位置计算的是 d*1 矩阵 和 1*q 矩阵的乘法运算,numpy将 d*1 矩阵自动压缩为d维向量,导致无法使用np.matmul()矩阵乘法。

【解决办法】将 (n,) 转为 (n,1)即可。

修改前:

c=np.matmul(a,b)#a:(d,)  b:(1,q)

修改后:

a=a.reshape(-1,1)c=np.matmul(a,b)#a:(d,1)  b:(1,q)  c:(d,q)

附:numpy中(n,1)和(n,)相互转换

来源地址:https://blog.csdn.net/m0_51976564/article/details/127626420

--结束END--

本文标题: ValueError: matmul: Input operand 1 has a mismatch in its core dimension 0 解决办法

本文链接: https://lsjlt.com/news/440896.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作