Python에서 Y, X1, X2, X3으로 표시된 열이있는 판다 데이터 프레임이 있다고 가정합니다. X에서 X1, X2, X3으로 OLS 회귀 분석을 실행합니다. 루프를 사용하여 회귀에서 계수를 목록에 저장하고 싶습니다. 루프에서 함수의 인수를 변경하려면 어떻게합니까? 다음 코드는 작동하지 않습니다.루프 (파이썬)에서 함수의 인수를 변경하는 방법은 무엇입니까?
import pandas as pd
import statsmodels.api as sm
ols = sm.OLS(df[['Y']],(df[['X_1','X_2','X_3']]))
olsfit = ols.fit(cov_type='HC0')
coef = []
for i in range(4):
coef.append(olsfit.params.X_i)
왜 루프가 필요합니까? 모델 객체는 모든 모델 파라미터에 대한 계수를 포함하는'params' 속성을 가지고 있습니다. – ako
좋은 지적입니다. 다른 많은 회귀 변수가 있다고 가정 해 보겠습니다. Z_1, ... Z_100, 그리고 X_1, ..., X_N 계수 만 추출하고 싶습니까? – DaveK
params는이 경우 pandas.Series이며 일부 매개 변수를 선택하거나 numpy 배열로 변환하고 numpy 색인을 사용하기 위해 색인을 생성 할 수 있습니다. – user333700