установка диапазона для прогнозирования линейной регрессии sklearn - PullRequest
0 голосов
/ 04 октября 2019

Моя проблема похожа на этот вопрос . Но я не получил ответ. Мне нужны дальнейшие пояснения.

Я использую sklearn прогноз линейной регрессии - впервые - чтобы добавить больше точек данных в мой набор данных. Добавление большего количества точек данных поможет мне более точно идентифицировать выбросы. Я построил свою модель и получил прогнозы, но хочу, чтобы модель возвращала предсказанные точки с определенным диапазоном. Возможно ли добиться этого?

Я хотел бы предсказать значения в столбце с именем 'delivery_fee'. Значения в столбце начинаются с 3 и неуклонно увеличиваются, пока не достигнут 27. Последнее значение в столбце, которое появляется сразу после 27, равно 47.

Я бы хотел, чтобы модель предсказывала значения между 27 и 47.

мой код:

import sklearn
from sklearn.model_selection import train_test_split 
from sklearn.linear_model import LinearRegression
from sklearn import preprocessing

#create a copy of the dataframe
delivery_linreg = outlierFileNew.copy()

le = preprocessing.LabelEncoder()
delivery_linreg['branch_code'] = le.fit_transform(delivery_linreg['branch_code'])

#select all columns in the datframe except for delivery_fee
x = delivery_linreg[[x for x in delivery_linreg.columns if x != 'delivery_fee']]
#selecting delivery_fee as the column to be predicted
y = delivery_linreg.delivery_fee
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.3, random_state=0)

#fitting simple linear regression to training set
linreg = LinearRegression()
linreg.fit(x_train,y_train)
delivery_predict = linreg.predict(x_test)

Моя модель возвращает значения в диапазоне от 4 до 17. Это не тот диапазон, который мне нужен. Любые предложения о том, как изменить прогнозируемый диапазон?

Спасибо,

...