R中混合模型公式中随机效应的威尔金森式表示法的起源,例如(1 | id)


16

R中的模型公式,例如

y ~ x + a*b + c:d

基于所谓的Wilkinson表示法Wilkinson和Rogers 1973,用于方差分析的阶乘模型的符号描述

本文没有讨论混合模型的符号(那时可能还不存在)。那么R中的混合模型公式lme4以及相关程序包中使用了什么,例如

y ~ x + a*b + c:d + (1|school) + (a*b||town)

来自?谁是第一次引入它们,何时引入?是否有针对他们的“ Wilkinson表示法”之类的商定术语?我专门指的是

(model formula |  grouping variable)
(model formula || grouping variable)

Answers:


11

从3.1-1版本|开始,这种符号就出现在nlme文档中了,那大概是在1999年末。我们可以轻松地在CRAN nlme代码档案中进行检查。nlme确实使用这种表示法,例如try library(nlme); formula(Orthodont); 的|出现-所以2000门的关闭。因此,让我们来挖掘...。“ 具有多层嵌套数据的图形方法 ” Pinheiro&Bates(1997),其中groupedData引入了构造函数。他们说:“ 分组数据对象中的公式具有与调用S-PLUS中的Trellis图形函数(例如xyplot)所使用的公式相同的模式。 ..贝尔实验室(RIP)开发了实际使用操作员的Trellis图形系统|已经表明了群体。这可能意味着... Becker等人的“ 网格显示的视觉设计和控制 ”。(1996)与此有关。本文没有介绍符号,但它是我可以找到的第一个电子网格显示参考。

从本质上讲,我们需要在这一点上挖掘可视化文献。也许我会看一下克利夫兰(Cleveland)的著作《可视化数据》Visualizing Data)(1993)和Deepayan Sarkar(已开发lattice)的早期著作。请注意,实际的运算符| (和||)是真正的原始运算符,因为它们与OR运算符相关联,因此直到有人使它们重载只是时间问题。虽然还没有一个完整的答案,但我强烈怀疑P&B检查了他们的同事们很酷的可视化系统(1996年论文中的情节对于2010年末的标准来说是相当好的),并意识到有人(贝克尔,克利夫兰和Shyu)已经为此做过一些工作(也许甚至当时与他们讨论过),然后跟进了已经存在的内容。即|运算符源自图形符号。格子几乎可以肯定使用了它。潜在的Trellis前辈也可能这样做,但是很难追踪他们的电子足迹。

总的来说,我认为您可能需要Bell Labs的NLME:用于混合效果模型软件上的此页面,以获取有关的更多历史信息nlme


1
非常感谢!确实可以nlme使用,|但我不认为它()用来表示随机效果,对吗?随机效果作为函数调用的单独参数列出。是作为同一公式的一部分lme4引入的吗?(x|id)
变形虫说莫妮卡(Monica)恢复工作

2
我认为您对括号的理解太多了;我强烈怀疑它们的存在是为了解析目的,因为lme4所有术语都使用统一的语法。例如,在fm1 <- lmer(Reaction ~ Days | Subject, sleepstudy)没有任何括号的情况下工作正常。
usεr11852恢复单胞菌说,

哦。确实。从来没有这样想过:)
变形虫说莫妮卡(Monica)

贝茨刚刚证实,随机部分是由nlme作者(他是其中之一)引入的:twitter.com/BatesDmbates/status/1111283948615802881
JonasLindeløv19年

@JonasLindeløv:太好了!感谢您的分享,我明天晚上会链接到答案。
usεr11852恢复单胞菌说,
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.