Побудова Лінійної Регресії за Допомогою Statsmodels
Свайпніть щоб показати меню
Побудова моделі лінійної регресії
У statsmodels для створення моделі лінійної регресії можна використовувати клас OLS.
Спочатку необхідно ініціалізувати об'єкт класу OLS за допомогою
sm.OLS(y, X_tilde).
Далі модель навчається методом fit().
model = sm.OLS(y, X_tilde)
model = model.fit()
Що еквівалентно:
model = sm.OLS(y, X_tilde).fit()
Конструктор класу OLS очікує на вхід певний масив X_tilde, який ми розглядали у нормальному рівнянні. Тому потрібно перетворити масив X у X_tilde. Це можна зробити за допомогою функції sm.add_constant().
Знаходження параметрів
Після навчання моделі можна легко отримати параметри за допомогою атрибута params.
123456789import statsmodels.api as sm import pandas as pd df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/simple_height_data.csv') X, y = df['Father'], df['Height'] X_tilde = sm.add_constant(X) model = sm.OLS(y, X_tilde).fit() beta_0, beta_1 = model.params print(beta_0, beta_1)
Створення прогнозів
Нові екземпляри можна легко передбачити за допомогою методу predict(), але для них також потрібно виконати попередню обробку вхідних даних:
12345import numpy as np X_new = np.array([65, 70, 75]) X_new_tilde = sm.add_constant(X_new) print(model.predict(X_new_tilde))
Отримання підсумкової інформації
Як ви, ймовірно, помітили, використання класу OLS не таке просте, як функції polyfit(). Але використання OLS має свої переваги. Під час навчання обчислюється багато статистичної інформації. Доступ до цієї інформації можна отримати за допомогою методу summary().
1print(model.summary())
Це велика кількість статистичних даних. Найважливіші частини цієї таблиці будуть розглянуті в наступних розділах.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Побудова Лінійної Регресії за Допомогою Statsmodels
Побудова моделі лінійної регресії
У statsmodels для створення моделі лінійної регресії можна використовувати клас OLS.
Спочатку необхідно ініціалізувати об'єкт класу OLS за допомогою
sm.OLS(y, X_tilde).
Далі модель навчається методом fit().
model = sm.OLS(y, X_tilde)
model = model.fit()
Що еквівалентно:
model = sm.OLS(y, X_tilde).fit()
Конструктор класу OLS очікує на вхід певний масив X_tilde, який ми розглядали у нормальному рівнянні. Тому потрібно перетворити масив X у X_tilde. Це можна зробити за допомогою функції sm.add_constant().
Знаходження параметрів
Після навчання моделі можна легко отримати параметри за допомогою атрибута params.
123456789import statsmodels.api as sm import pandas as pd df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/simple_height_data.csv') X, y = df['Father'], df['Height'] X_tilde = sm.add_constant(X) model = sm.OLS(y, X_tilde).fit() beta_0, beta_1 = model.params print(beta_0, beta_1)
Створення прогнозів
Нові екземпляри можна легко передбачити за допомогою методу predict(), але для них також потрібно виконати попередню обробку вхідних даних:
12345import numpy as np X_new = np.array([65, 70, 75]) X_new_tilde = sm.add_constant(X_new) print(model.predict(X_new_tilde))
Отримання підсумкової інформації
Як ви, ймовірно, помітили, використання класу OLS не таке просте, як функції polyfit(). Але використання OLS має свої переваги. Під час навчання обчислюється багато статистичної інформації. Доступ до цієї інформації можна отримати за допомогою методу summary().
1print(model.summary())
Це велика кількість статистичних даних. Найважливіші частини цієї таблиці будуть розглянуті в наступних розділах.
Дякуємо за ваш відгук!