A notação |
existe nos nlme
documentos desde a versão 3.1-1 e provavelmente no final de 1999; podemos facilmente verificar isso no arquivo de códigos CRAN nlme . nlme
usa essa notação, por exemplo, try library(nlme); formula(Orthodont)
; o |
surgimento - então os anos 2000 estão desligados. Então vamos cavar .... " Métodos Gráficos para Dados com Níveis Múltiplos de Aninhamento " Pinheiro & Bates (1997) onde o groupedData
construtor é introduzido. E eles dizem: " A fórmula em um objeto de dados agrupados tem o mesmo padrão que a fórmula usada em uma chamada para uma função gráfica Trellis no S-PLUS, como o xyplot ", o que ... faz sentido, como a P&B está trabalhando. .. Bell Labs (RIP), que desenvolveu o sistema gráfico Trellis que realmente utilizava o operador|
já para indicar grupos. O que provavelmente significa ... " O design visual e o controle da exibição de treliça ", de Becker et al. (1996) tem algo a ver com isso. A notação não é introduzida neste artigo, mas é a primeira referência eletrônica de exibição da Trellis que posso encontrar.
Essencialmente, precisamos desenterrar a literatura de visualização neste momento. Provavelmente eu verificaria o livro de Cleveland Visualizing Data (1993) e os primeiros trabalhos de Deepayan Sarkar (que se desenvolveu lattice
). Observe que o operador real |
(e ||
) são verdadeiros operadores primitivos, pois estão associados a OR
operadores; portanto, era apenas uma questão de tempo até que alguém os sobrecarregasse. Embora não seja uma resposta completa, suspeito fortemente que a P&B tenha verificado o sistema de visualização legal de seus colegas (os gráficos naquele artigo de 1996 são muito bons para os padrões do final de 2010) e percebi que alguém (Becker, Cleveland e Shyu) já havia trabalhado nisso (talvez até discutiu isso com eles na época) e apenas acompanhou o que já estava lá. Ou seja, o|
O operador se origina na notação gráfica. Trellis quase certamente o usou; os possíveis antecessores da Trellis também podem ter feito isso, mas sua pegada eletrônica é muito difícil de rastrear.
Em geral, acho que você pode querer esta página em NLME: Software para modelos de efeitos mistos da Bell Labs para obter informações mais históricas sobre nlme
.
nlme
usa,|
mas eu não acho que ele use()
para denotar efeitos aleatórios, certo? Efeitos aleatórios são listados como um argumento separado para a chamada de função. Foi issolme4
introduzido(x|id)
como parte da mesma fórmula?