在基于lmer的建模中使用I(...)等参数的问题

时间:2012-02-10 20:02:41

标签: r

我曾经使用以下脚本看过GLMM建模过程:

dative.glmm8 <- lmer(RealizationOfRecipient ~ AnimacyOfRec + DefinOfRec +
PronomOfRec * PronomOfTheme + I(AccessOfRec=="given") + AnimacyOfTheme + DefinOfTheme +
I(AccessOfTheme=="given") + log(RatioOfLengthsThemeOverRecipient) + (1|Verb),      
family="binomial")

我不明白“I(AccessOfTheme ==”given“)”的传递参数“?这种论证背景的物理意义是什么?

1 个答案:

答案 0 :(得分:2)

此问题实际上并非lmer - 具体,但适用于R中的所有模型公式。在公式上下文中,I()代表“绝缘”:来自http://cran.r-project.org/doc/manuals/R-intro.pdf

  

I(M)Insulate M. Inside M所有操作符都有正常的算术运算   意思,和        该术语出现在模型矩阵中。

这实际上是在AccessOfRec等于“给定”(1)或其他任何东西(0)的情况下动态创建一个虚拟(0/1)变量。

您也可以通过预先创建变量来完成此操作,例如: AccessOfRec_given <- (AccessOfRec=="given"),然后在公式中使用派生变量。

顺便说一句,我强烈建议使用data参数lmer,而不是使用全局工作区中的变量或attach()数据帧。