2015-01-13 3 views
0

내가 (이 코드 오류가 라인 인쇄 MSE에파이썬 NumPy와 : 피연산자 모양

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) 

에 대한 X를이 오류 "피연산자 모양과 함께 방송 할 수 없습니다"를 얻고 함께 방송 할 수없는,

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

답변

1

모양 변경 y : Y)

오류에 ValueError이다

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) 
+0

위대한 작품입니다! 하지만 model.score 및 mse 모두 ​​동일한 값을 반환해야합니다, 어떤 일이 일어나지 않는 시도하고있다. – shivram

+0

예, 점수 [여기]의 정의를 확인하는 것이 좋습니다 (http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LinearRegression.html#sklearn.linear_model.LinearRegression.score). – mty

관련 문제