408
Table of Contents
使用 statsmodel 建立GEE
#統計 #GEE #Python
#Statsmodel
前言
- 在Python中有個強大的統計套件statsmodel,可以讓我們用Python做出可以比擬R以及一些統計軟體的效果。
- 最近因為研究需要,去學習了GEE(Generalized estimating equation – Wikipedia)。詳細的GEE原理與應用場景,大家可以參考:[12.1 – Introduction to Generalized Estimating Equations | STAT 504]、[Getting Started with Generalized Estimating Equations | University of Virginia Library Research Data Services + Sciences]。
- 在python 也可以透過 statsmodel實現GEE的統計,下面來稍微介紹ㄧ下,具體使用statsmodel實現GEE的方式。
Logit GEE
如果目標變數是binary ,則可以透過下列程式碼處理:
fam = sm.families.Binomial()
ind = sm.cov_struct.Exchangeable()
mod=smf.gee(formula=formila, groups=’hmpcrtno‘,time=“datetime”, data=df_dataset, cov_struct=ind, family=fam)
res = mod.fit()
res.summary2()
OLS GEE
如果目標變數是continuous data ,則可以透過下列程式碼處理:
fam = sm.families.Poisson()
ind = sm.cov_struct.Exchangeable()
mod= smf.gee(formula=groups=’hmpcrtno’,time=“datetime”, data=df_dataset, cov_struct=ind, family=fam)
res = mod.fit()
res.summary2()
SeeAlso
-
GEE 架構除了regression的formula外,在statsmodel還有幾個重點:
- cov_struct: 變數之間得結構,是否有內在相關。如果是個別獨立可以用independent,但是大部分都是合用exchangeable.
- family :根據使用的類別來使用,Logit 這類二元分類,就要用binominal,線性可以使用Gaussian,其他比率問文可以使用Poison
延伸閱讀: