在处理分层/多级/面板数据集时,采用返回可用变量的组内和组间标准差的包可能非常有用。
这是Stata
可以通过命令轻松完成以下数据的事情
xtsum, i(momid)
我做了一个研究,但我找不到任何R
可以做到这一点的包..
编辑:
只是为了解决想法,分层数据集的示例可能是这样的:
son_id mom_id hispanic mom_smoke son_birthweigth
1 1 1 1 3950
2 1 1 0 3890
3 1 1 0 3990
1 2 0 1 4200
2 2 0 1 4120
1 3 0 0 2975
2 3 0 1 2980
“多级”结构是由每个母亲(较高级别)有两个或多个儿子(较低级别)这一事实给出的。因此,每个母亲都定义了一组观察结果。
因此,每个数据集变量可以在母亲之间和母亲内部或仅在母亲之间变化。birtweigth
母亲之间有所不同,但同一母亲内部也是如此。相反,hispanic
是固定为同一个母亲。
例如, 的母内方差son_birthweigth
为:
# mom1 means
bwt_mean1 <- (3950+3890+3990)/3
bwt_mean2 <- (4200+4120)/2
bwt_mean3 <- (2975+2980)/2
# Within-mother variance for birthweigth
((3950-bwt_mean1)^2 + (3890-bwt_mean1)^2 + (3990-bwt_mean1)^2 +
(4200-bwt_mean2)^2 + (4120-bwt_mean2)^2 +
(2975-bwt_mean3)^2 + (2980-bwt_mean3)^2)/(7-1)
而母亲之间的差异是:
# overall mean of birthweigth:
# mean <- sum(data$son_birthweigth)/length(data$son_birthweigth)
mean <- (3950+3890+3990+4200+4120+2975+2980)/7
# within variance:
((bwt_mean1-mean)^2 + (bwt_mean2-mean)^2 + (bwt_mean3-mean)^2)/(3-1)