首页 > 解决方案 > 嵌套随机效应和相关的固定效应

问题描述

我有跨国面板数据,我想知道对IV二元学生水平结果的影响DV

我想包括一个嵌套随机效应,它考虑到学生所在的学校会影响结果,并且不同国家的学校存在显着差异:(1|country/school). 所以我开始的模型是:

model = glmer(DV ~ IV + (1|country/school), data=data, family = 'binomial')

我还想考虑时间趋势。起初我认为我应该做年度固定效应,但这些国家的政治发展随着时间的推移而有很大差异,我想抓住这一点,虽然 1991 年可能使 A 国的学校陷入动荡,但 1991 年可能是教育资金的丰收年在 B 国。因此我认为我可能应该包括一个国家年固定效应,如下所示:

model = glmer(DV ~ IV + (1|country/school) + as.factor(country_year),
                data=data, family = 'binomial')

模型的随机效应是:

Random effects:
 Groups          Name        Variance  Std.Dev. 
 school:country (Intercept) 5.703e-02 2.388e-01
 country         (Intercept) 4.118e-15 6.417e-08
Number of obs: 627, groups:  school:country, 51; country, 22

当模型中已经包含国家随机效应时,包括国家年份固定效应是否不正确?

问这个问题的另一种方式:我应该如何处理这样一个事实,即school是 的子集country,并且country_year是 的子集country,但两者都不是,school或者不是country_year彼此的子集?

标签: rlme4mixed-modelsnlmemultilevel-analysis

解决方案


据我所知,你们有 22 个国家。目前尚不清楚它是什么country_year,但假设它只是 的一个虚拟country:year变量,那么将其作为一个固定效应(作为一个因素)包括在内可能不是一个好主意,因为会有太多的级别无法有效地解释。

year由于您对时间趋势感兴趣,因此将其包含为固定效果是有意义的:

DV ~ IV + (1|country/school) + as.factor(year)

如果有很多years,您可能会发现最好将年份包含为数字

DV ~ IV + (1|country/school) + as.numeric(year)

..因为这将估计一年的单一(线性)趋势,而如果它是一个因素,那么它将计算一个估计值,无论有多少年(减 1),当有许多级别时,这将不容易解释。但是,当编码为一个因素时,估计值可以表明是否存在非线性趋势,然后您可以切换到as.numeric并引入非线性项。

OP的最后一段有点混乱。如果country_year真的嵌套在 中country,那么我们将有:

DV ~ IV + (1|country/school) + (1|country:country_year)

..这与:

DV ~ IV + (1|country) + (1/school:country) + (1|school:country_year)

...但是这不会估计任何时间趋势。如果你想估计一个趋势,那么你需要包括year(或country_year)作为如上所述的固定效应 - 你可以通过将其作为随机斜率包括在学校(和/或国家)之间来允许它不同,例如:

DV ~ IV + year + (1|country) + (year|school:country)

推荐阅读