stats 모델을 통한 선형 회귀 분석 OLS fit 피팅하기 전에 독립 변수의 모든 점에 상수 '1'을 추가하려면 add_constant를 사용해야합니다. 그러나이 컨텍스트에서 인터셉트에 대한 나의 유일한 이해는 x가 0 일 때 우리 라인의 y 값이 될 것이므로 항상 여기에 '1'을 주입하는 목적이 무엇인지 명확하지 않습니다. OLS 적합을 실제로 말하는이 상수는 무엇입니까?statsmodels add_constant for OLS 가로 채기, 실제로 무엇을하고 있습니까?
2
A
답변
2
값에 상수를 추가하지 않고 피팅하는 선형 방정식에 상수 항을 추가합니다. 단일 예측 자의 경우, y = mx + b
데이터와 일치하는 라인 y = mx
을 피팅하는 것의 차이점입니다.
1
statsmodel의 sm.add_constant는 LinearRegression()의 sklearn의 fit_intercept 매개 변수와 동일합니다. sm.add_constant를하지 않거나 LinearRegression (fit_intercept = False) 일 때 statsmodels 및 sklearn 알고리즘은 y = mx + b에서 b = 0이라고 가정하고 계산하는 대신 b = 0을 사용하여 모델에 맞습니다. 귀하의 데이터를 기반으로해야 할 일은 무엇입니까?
모든 상수가 수행 중이므로 방정식에 *가 * a "b"가 있음을 나타냅니다. –
@TimLindsey : 본질적으로 그렇습니다. 그것은 모델에 b에 대한 값과 예측 인자에 대한 계수를 맞 춥니 다. 나는 왜 통계 모델이 왜 명시 적으로 이것을 추가해야하는지 이해하지 못했다. 왜냐하면 [여기] (http://stats.stackexchange.com/questions/7948/when-is-it-ok-to-remove-the- 선형 회귀 모형 (intercept-in-a-linear-regression-model))을 사용하지 않는 경우에는 그렇게하지 않는 것이 정당화되지 않는 한 항상하고 싶습니다. – BrenBarn