Мне бы хотелось глубже понять, что выводится методом .fit_transform () в классе PolynomialFeatures в scikit learn.
Я понимаю, что метод выполняет две вещи: 1)создание модели для данных путем подгонки ее к алгоритму регрессии и 2) создание новых данных на основе модели, найденной в 1.
Но что я не понимаю, так это результат.Вот мой код:
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
np.random.seed(0)
n = 15
x = np.linspace(0,10,n) + np.random.randn(n)/5
y = np.sin(x)+x/6 + np.random.randn(n)/10
X_train, X_test, y_train, y_test = train_test_split(x, y, random_state=0)
X_train1 = X_train.reshape(11,1)
y_train1 = y_train.reshape(11,1)
def answer_one():
from sklearn.linear_model import LinearRegression
from sklearn.preprocessing import PolynomialFeatures
poly1 = PolynomialFeatures(degree=1)
X_poly1 = poly1.fit_transform(X_train1)
return X_poly1
answer_one()
Вывод, который я получаю:
array([[ 1. , 10.08877265],
[ 1. , 3.23065446],
[ 1. , 1.62431903],
[ 1. , 9.31004929],
[ 1. , 7.17166586],
[ 1. , 4.96972856],
[ 1. , 8.14799756],
[ 1. , 2.59103578],
[ 1. , 0.35281047],
[ 1. , 3.375973 ],
[ 1. , 8.72363612]])
Я предполагаю, что каждое второе число в каждом мини-массиве является значением, рассчитанным моделью, но я нене понимаю, что такое каждый 1?