Додавання взаємодії
Як і у випадку з однією числовою та однією категоріальною пояснювальними змінними, числові пояснювальні змінні також можуть взаємодіяти. За такої структури моделі ви отримаєте третій коефіцієнт нахилу: по одному для кожної пояснювальної змінної та один для взаємодії.
Тут ви запустите, зробите прогноз і побудуєте графік тієї самої моделі, що й у попередній вправі, але цього разу з урахуванням взаємодії між пояснювальними змінними.
Ця вправа є частиною курсу
Середній рівень регресії зі statsmodels у Python
Інструкції до вправи
- Змініть назву моделі на
mdl_price_vs_conv_dist_inter. - Адаптуйте решту коду з попередньої вправи, щоб додати взаємодію.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Convert to mdl_price_vs_conv_dist_inter
mdl_price_vs_conv_dist = ols("price_twd_msq ~ n_convenience + sqrt_dist_to_mrt_m", data=taiwan_real_estate).fit()
# Use mdl_price_vs_conv_dist_inter to make predictions
n_convenience = np.arange(0, 11)
sqrt_dist_to_mrt_m = np.arange(0, 81, 10)
p = product(n_convenience, sqrt_dist_to_mrt_m)
explanatory_data = pd.DataFrame(p, columns=["n_convenience", "sqrt_dist_to_mrt_m"])
prediction_data = explanatory_data.assign(
price_twd_msq = mdl_price_vs_conv_dist.predict(explanatory_data))
sns.scatterplot(x="n_convenience", y="sqrt_dist_to_mrt_m", data=taiwan_real_estate, hue="price_twd_msq", legend=False)
sns.scatterplot(x="n_convenience", y="sqrt_dist_to_mrt_m", data=prediction_data, hue="price_twd_msq", marker="s")
plt.show()