Python 2.7 Python Numpy:操作数无法与形状一起广播

Python 2.7 Python Numpy:操作数无法与形状一起广播,python-2.7,numpy,mean-square-error,Python 2.7,Numpy,Mean Square Error,我得到这个错误“操作数不能与形状一起广播”的代码 import numpy as np from sklearn.datasets import load_boston from sklearn.linear_model import LinearRegression beantown = load_boston() x=beantown.data y=beantown.target model = LinearRegression() model = model.fit(x,y) def m

我得到这个错误“操作数不能与形状一起广播”的代码

import numpy as np
from sklearn.datasets import load_boston
from sklearn.linear_model import LinearRegression
beantown = load_boston()
x=beantown.data
y=beantown.target
model = LinearRegression()
model = model.fit(x,y)

def mse(truth, predictions): 
    return ((truth - predictions) ** 2).mean(None)
print model.score(x,y)
print mse(x,y)
错误出现在print mse(x,y)行上

Error是ValueError:

operands could not be broadcast together with shapes (506,13) (506,)

重塑
y

from sklearn.datasets import load_boston
from sklearn.linear_model import LinearRegression
beantown = load_boston()
x = beantown.data
y = beantown.target
y = y.reshape(y.size, 1)
model = LinearRegression()
model = model.fit(x, y)


def mse(truth, predictions):
    return ((truth - predictions) ** 2).mean(None)
print model.score(x, y)
print mse(x, y)

太好了,它工作了!但是我正在尝试model.score和mse都应该返回相同的值,这是不可能的。是的,检查score的定义可能是个好主意。