[英]What does the ( | ) syntax mean in an R formula?
我正在关注教程并遇到以下语法:
# assume 'S' is the name of the subjects column
# assume 'X1' is the name of the first factor column
# assume 'X2' is the name of the second factor column
# assume 'X3' is the name of the third factor column
# assume 'Y' is the name of the response column
# run the ART procedure on 'df'
# linear mixed model syntax; see lme4::lmer
m = art(Y ~ X1 * X2 * X3 + (1|S), data=df)
anova(m)
我对(|)
语法有点困惑。 我查看了有关线性混合 model 语法lmer
的文档,发现:“随机效应术语由竖线(|)
区分设计矩阵的表达式与分组因子”。
所以我假设这里的1
和S
是两个随机效应项。 S
作为随机效应是有意义的,因为它是一个可以代表参与者的随机变量。 但是1
怎么是随机变量呢? 1
和|
是什么? 是这里的意思吗?
该|
符号在公式中以不同的方式在不同的函数中使用。 在线性混合模型的情况下,它用于表示随机效应。 在混合模型中可以使用不同类型的随机效应:
公式中的1
用于指定使用其中的哪一个。 下面是一些例子,取自我的书:
library(lme4)
# Random intercept:
m1 <- lmer(Reaction ~ Days + (1|Subject), data = sleepstudy)
# Random slope:
m2 <- lmer(Reaction ~ Days + (0 + Days|Subject), data = sleepstudy)
# Correlated random intercept and slope:
m3 <- lmer(Reaction ~ Days + (1 + Days|Subject), data = sleepstudy)
# Uncorrelated random intercept and slope:
m4 <- lmer(Reaction ~ Days + (1|Subject) + (0 + Days|Subject),
data = sleepstudy)
因此,在您的示例中, (1|S)
用于添加随机截距,对应于S
的不同值。
|
的类似但符号不同的用法可以在lmtree
的partykit
公式中找到,该公式用于将决策树与节点中的线性模型进行拟合。 在这种情况下,公式看起来像y ~ x1 + x2 | z1 + z2 + z3
y ~ x1 + x2 | z1 + z2 + z3
,其中y
是响应变量, x
变量是线性模型中的解释变量, z
变量是用于构建树的变量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.