2017-11-27 31 views
1

Statsmodels Mixedlm의 출력에 대해 다소 혼란스러워하며 누군가가 설명하기를 바라고 있습니다.Python Statsmodels Mixedlm (혼합 선형 모델) 무작위 효과

이전의 두 판매 가격/각 속성의 판매 날짜를 포함하여 단독 주택에 대한 대규모 데이터 세트가 있습니다. 이 전체 데이터 세트를 지오 코딩하고 각 속성에 대한 고도를 가져 왔습니다. 표고와 부동산 가격 상승 간의 관계가 각 도시마다 다른 방식을 이해하려고합니다.

필자는 통계를 혼합 된 선형 모델을 사용하여 도시를 내 그룹 카테고리로 사용하여 여러 가지 요인을 일정하게 유지하면서 고도에 대한 가격 상승을 회귀했습니다.

md = smf.mixedlm('price_relative_ind~Elevation+YearBuilt+Sale_Amount_1+LivingSqFt',data=Miami_SF,groups=Miami_SF['City']) 

mdf = md.fit() 

mdf.random_effects 

mdf.random_effects를 입력하면 계수 목록이 반환됩니다. 이 목록을 본질적으로 각 도시에 대한 기울기 (즉, Elevation을 판매 가격 상승과 관련시키는 개별 회귀 계수)로 해석 할 수 있습니까? 아니면이 결과가 각 도시에 대한 요격입니까?

답변

1

저는 MixedLM의 무작위 효과에 대해서 머리를 쓰려고합니다. the docs을보고있는 것처럼를 입력하는 것처럼 보이지만 exog_re 또는 re_formula없이 각 그룹에 임의의 요격을 추가하기 만하면됩니다. 워드 프로세서에서 예 :

# A basic mixed model with fixed effects for the columns of exog and a random intercept for each distinct value of group: 

model = sm.MixedLM(endog, exog, groups) 
result = model.fit() 

따라서, 당신은 random_effects 방법은,이 경우 도시의 차단을 반환하지 계수/슬로프 기대.

model = sm.MixedLM.from_formula(
    "Y ~ X", data, re_formula="X", groups=data["C"]) 

또는 단지와 :

는 기울기와 절편 중 하나, 당신이 statsmodels 'Jupyter 튜토리얼에서이 예제와 비슷한 뭔가를 할 수 있으며, 다른 기능 중 하나에 대해 임의의 기울기를 추가하려면 기울기 :
model = sm.MixedLM.from_formula(
    "Y ~ X", data, re_formula="0 + X", groups=data["C"]) 

random_effects에 대한 문서를 보면, 그것은이 각 그룹의 임의 효과에 대한 평균을 반환했다. 그러나 임의 효과는 절편으로 인한 것이므로 절편 자체와 동일해야합니다. 에있어서 보는

MixedLMResults.random_effects()[source] 
    The conditional means of random effects given the data. 

    Returns:  
     random_effects : dict 
     A dictionary mapping the distinct group values to the means of the random effects for the group. 

일부 유용한 자원이 포함

MixedML의 결과 MixedML
  • Docs의 화학식 버전