ValueError: operands could not be broadcast together with shapes (204,111104

本文解决了一个常见的NumPy数组操作错误,即当尝试将形状为(100,3)和(3,100)的数组进行乘法运算时,由于形状不匹配导致的ValueError。提供了两种解决方案:一是使用numpy的dot()函数;二是将数组转换为矩阵类型并使用进行乘法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

报错

A=(D*W)

ValueError: operands could not be broadcast together with shapes (100,3) (3,100)

解决方法:

本人出现的问题是,D,W的大小分别为(100,3) (3,100), 是<type ‘list’>、<numpy.ndarray>类型,而不是类型,直接进行乘积C = AB, 之后,提示上述错误,原因是数组大小“不一致”, 解决方案,不用 “ * ”符号,使用numpy中的dot()函数,可以实现两个二维数组的乘积,或者将数组类型转化为矩阵类型,使用""相乘,具体如下:
法一:

 A=dot(D,W)

法二:

D=mat(D)
W=mat(W)
A=D*W
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值