У меня есть файл Excel, содержащий 3 простых столбца: Цена за единицу, Проданное количество и Итого.Итог просто получается путем умножения цены за единицу на количество.Поэтому я настроил простой код алгоритма линейной регрессии sklearn для прогнозирования этого значения:
import numpy as np
import pandas as pd
from sklearn import *
data = pd.read_excel("Sample.xls")[["Units", "Unit Cost", "Total"]]
predict = "Total"
X = np.array(data.drop([predict], 1))
y = np.array(data[predict])
x_train, x_test, y_train, y_test = model_selection.train_test_split(X, y, test_size=0.1)
linear = linear_model.LinearRegression()
linear.fit(x_train, y_train)
acc = linear.score(x_test, y_test)
print(acc)
Я запустил функцию печати 3 раза, и она дала мне следующие результаты:
-1.517292267629657
0.9167778505657976
0.15292336331892453
Почемуя получаю это, а не точность 100%?Модель должна признать, что предсказание - это просто умножение первого столбца на второе