Операнды не могут быть переданы вместе - PullRequest
0 голосов
/ 14 февраля 2019

Счет возвращается как нан, и я получаю следующую ошибку в функции оценки:

ValueError: операнды не могут быть переданы вместе с фигурами (25,) (75,)

data = np.loadtxt('data.csv', delimiter = ',')
x = data[:, 0:2]
y = data[:, 2]
from sklearn import model_selection
x_train, x_test, y_train, y_test = model_selection.train_test_split(x, y)

def fit(x_train, y_train):
    m1 = ((x_train[:, 1] **2) * x_train[:, 0] * y_train - (x_train[:, 0] * x_train[:, 1]) * (x_train[:, 1] * y_train))/((x_train[:, 0] **2) * (x_train[:,1] **2) - (x_train[:, 0] * x_train[:, 1]) **2)
    m2 = ((x_train[:, 0] **2) * x_train[:, 1] * y_train - (x_train[:, 1] * x_train[:, 0]) * (x_train[:, 0] * y_train))/((x_train[:, 1] **2) * (x_train[:,0] **2) - (x_train[:, 1] * x_train[:, 0]) **2)
    return m1, m2, c
def predict(x, m1, m2, c):
    return (x_train[:, 0] * m1) + (x_train[:, 1] * m2) + c

def score(y_truth, y_pred):
    u = ((y_truth - y_pred) ** 2).sum()
    v = ((y_truth - y_truth.mean()) ** 2).sum()
    return  1 - u/v

m1, m2, c = fit(x_train, y_train)
y_train_pred = predict(x, m1, m2, c)
print("Train Score ", score(y_train, y_train_pred))
y_test_pred = predict(x, m1, m2, c)
print("Test Score ", score(y_test, y_test_pred))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...