상호작용 포함하기
수치형 설명 변수가 상호작용할 수도 있습니다. 한 개의 수치형과 한 개의 범주형 변수가 있을 때와 마찬가지예요. 이런 모델 구조에서는 기울기 계수가 세 개 생깁니다. 각 설명 변수에 하나씩, 그리고 상호작용에 하나씩입니다.
여기서는 이전 연습 문제와 동일한 모델을 실행하고 예측을 만들고 그래프를 그리되, 이번에는 설명 변수들 간의 상호작용을 포함해 보겠습니다.
이 연습은 강의의 일부입니다
Python의 statsmodels로 배우는 중급 회귀
연습 안내
- 모델 이름을
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()