24

我使用 python 2.7 并尝试预测从 1.00000000 到 3.0000000008 的一些随机数据。我的数组中有大约 196 个项目,我得到了错误

ValueError: operands could not be broadcast together with shape (2) (50)

我似乎无法自己解决这个问题。任何帮助或相关文档的链接将不胜感激。

这是我正在使用的生成此错误的代码

nsample = 50
sig = 0.25
x1 = np.linspace(0,20, nsample)
X = np.c_[x1, np.sin(x1), (x1-5)**2, np.ones(nsample)]
beta = masterAverageList
y_true = ((X, beta))
y = y_true + sig * np.random.normal(size=nsample)
4

1 回答 1

23

如果Xbeta不具有与您最后一行的 rhs 中的第二项相同的形状(即nsample),那么您将收到此类错误。要将数组添加到数组元组中,它们都必须是相同的形状。

我建议查看numpy 广播规则

于 2012-08-08T01:48:40.240 回答