Includerea unei interacțiuni
La fel ca în cazul unei variabile explicative numerice și uneia categoriale, variabilele explicative numerice pot interacționa și ele între ele. Cu această structură de model, vei obține un al treilea coeficient de pantă: câte unul pentru fiecare variabilă explicativă și unul pentru interacțiunea dintre ele.
Aici vei rula, prezice și reprezenta grafic același model ca în exercițiul anterior, dar de data aceasta incluzând o interacțiune între variabilele explicative.
Acest exercițiu face parte din cursul
Regresie intermediară cu statsmodels în Python
Instrucțiuni pentru exercițiu
- Schimbă numele modelului în
mdl_price_vs_conv_dist_inter. - Adaptează restul codului din exercițiul anterior pentru a include o interacțiune.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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()