值错误:形状不匹配:无法将对象广播到单个形状

2024-04-24 21:25:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用SciPy的pearsonr(x,y)方法,我无法找出发生以下错误的原因:

ValueError: shape mismatch: objects cannot be broadcast to a single shape

它计算前两个(我在一个循环中运行几千个这样的测试),然后死亡。有人知道问题出在哪里吗?

r_num = n*(np.add.reduce(xm*ym))

这是皮尔逊方法中出现错误的那一行,如有帮助,将不胜感激。


Tags: to方法objects错误原因scipybenum
1条回答
网友
1楼 · 发布于 2024-04-24 21:25:24

这个特殊的错误意味着,行上的算术运算中使用的一个变量的形状与同一行上的另一个变量的形状不兼容(即,既不同又非标量)。由于nnp.add.reduce()的输出都是标量,这意味着问题在于xmym,这两个输入减去它们各自的平均值。

基于此,我的猜测是,您的xy输入彼此具有不同的形状,这使得它们与元素乘法不兼容。

**从技术上讲,不是同一行上的变量具有不兼容的形状。唯一的问题是当两个变量被相加、相乘等,有不相容的形状时,不管这些变量是不是临时的(例如,函数输出)。两个形状不同的变量在同一条线上是可以的,只要在计算数学表达式之前有其他东西纠正了这个问题。

相关问题 更多 >