Resumen ejecutivo
De hecho, se suele decir que si se incluyen todos los niveles posibles del factor en un modelo mixto, entonces este factor debe tratarse como un efecto fijo. Esto no es necesariamente cierto POR DOS RAZONES DISTINTAS:
(1) Si el número de niveles es grande, entonces puede tiene sentido tratar el factor [cruzado] como aleatorio.
Estoy de acuerdo tanto con @Tim como con @RobertLong en este punto: si un factor tiene un gran número de niveles que están todos incluidos en el modelo (como, por ejemplo, todos los países del mundo; o todas las escuelas de un país; o tal vez toda la población de sujetos encuestados, etc.), entonces no hay nada de malo en tratarlo como aleatorio --- esto podría ser más parsimonioso, podría proporcionar alguna contracción, etc.
lmer(size ~ age + subjectID) # fixed effect
lmer(size ~ age + (1|subjectID)) # random effect
(2) Si el factor está anidado dentro de otro efecto aleatorio, hay que tratarlo como aleatorio, independientemente de su número de niveles.
Hubo una gran confusión en este hilo (ver comentarios) porque otras respuestas son sobre el caso #1 de arriba, pero el ejemplo que diste es un ejemplo de diferentes situación, es decir, este caso #2. Aquí sólo hay dos niveles (es decir, ¡no es en absoluto "un gran número"!) y agotan todas las posibilidades, pero son anidado dentro de otro efecto aleatorio , dando lugar a un efecto aleatorio anidado.
lmer(size ~ age + (1|subject) + (1|subject:side) # side HAS to be random
Discusión detallada de su ejemplo
Los lados y los sujetos en su experimento imaginario están relacionados como las clases y las escuelas en el ejemplo del modelo jerárquico estándar. Quizá cada escuela (nº 1, nº 2, nº 3, etc.) tenga la clase A y la clase B, y se supone que estas dos clases son aproximadamente iguales. No modelará las clases A y B como un efecto fijo con dos niveles; esto sería un error. Pero tampoco modelará las clases A y B como un efecto aleatorio "separado" (es decir, cruzado) con dos niveles; esto también sería un error. En su lugar, modelará las clases como un efecto aleatorio anidado dentro de las escuelas.
Vea aquí: Efectos aleatorios cruzados y anidados: ¿en qué se diferencian y cómo se especifican correctamente en lme4?
En su estudio imaginario del tamaño del pie, el sujeto y el lado son efectos aleatorios y el lado está anidado dentro del sujeto. Esto significa esencialmente que se forma una variable combinada, por ejemplo, Juan-Izquierda, Juan-Derecha, María-Izquierda, María-Derecha, etc., y hay dos efectos aleatorios cruzados: sujetos y sujetos-lados. Así, para el sujeto $i=1\ldots n$ y para el lado $j=1,2$ tendríamos:
$$\text{Size}_{ijk} = \mu+\alpha\cdot\text{Height}_{ijk}+\beta\cdot\text{Weight}_{ijk}+\gamma\cdot\text{Age}_{ijk}+\epsilon_i + \color{red}{\epsilon_{ij}} + \epsilon_{ijk}$$ $$\epsilon_i\sim\mathcal N(0,\sigma^2_\mathrm{subjects}),\quad\quad\text{Random intercept for each subject}$$ $$\color{red}{\epsilon_{ij}}\sim\mathcal N(0,\sigma^2_\text{subject-side}),\quad\quad\text{Random int. for side nested in subject}$$ $$\epsilon_{ijk}\sim\mathcal N(0,\sigma^2_\text{noise}),\quad\quad\text{Error term}$$
Como tú mismo has escrito, "no hay ninguna razón para creer que el pie derecho sea, por término medio, más grande que el izquierdo". Por lo tanto, no debería haber ningún efecto "global" (ni fijo ni aleatorio cruzado) del pie derecho o del izquierdo; en cambio, se puede pensar que cada sujeto tiene "un" pie y "otro" pie, y esta variabilidad deberíamos incluirla en el modelo. Estos "un" y "otro" pie están anidados dentro de los sujetos, de ahí que haya efectos aleatorios anidados.
Más detalles en respuesta a los comentarios. [Sep 26]
Mi modelo anterior incluye Side como efecto aleatorio anidado dentro de Subjects. Aquí hay un modelo alternativo, sugerido por @Robert, donde Side es un efecto fijo:
$$\text{Size}_{ijk} = \mu+\alpha\cdot\text{Height}_{ijk}+\beta\cdot\text{Weight}_{ijk}+\gamma\cdot\text{Age}_{ijk} + \color{red}{\delta\cdot\text{Side}_j}+\epsilon_i + \epsilon_{ijk}$$
Desafío a @RobertLong o a @gung a que expliquen cómo este modelo puede hacerse cargo de las dependencias existentes para mediciones consecutivas del mismo Lado del mismo Sujeto, es decir, de las dependencias para puntos de datos con el mismo $ij$ combinación.
No puede.
Lo mismo ocurre con el modelo hipotético de @gung con Side como efecto aleatorio cruzado:
$$\text{Size}_{ijk} = \mu+\alpha\cdot\text{Height}_{ijk}+\beta\cdot\text{Weight}_{ijk}+\gamma\cdot\text{Age}_{ijk} +\epsilon_i + \color{red}{\epsilon_j} + \epsilon_{ijk}$$
Tampoco tiene en cuenta las dependencias.
Demostración mediante una simulación [2 de octubre]
Aquí hay una demostración directa en R.
Genero un conjunto de datos de juguete con cinco sujetos medidos en ambos pies durante cinco años consecutivos. El efecto de la edad es lineal. Cada sujeto tiene un intercepto aleatorio. Y cada sujeto tiene uno de los pies (el izquierdo o el derecho) más grande que otro.
set.seed(17)
demo = data.frame(expand.grid(age = 1:5,
side=c("Left", "Right"),
subject=c("Subject A", "Subject B", "Subject C", "Subject D", "Subject E")))
demo$size = 10 + demo$age + rnorm(nrow(demo))/3
for (s in unique(demo$subject)){
# adding a random intercept for each subject
demo[demo$subject==s,]$size = demo[demo$subject==s,]$size + rnorm(1)*10
# making the two feet of each subject different
for (l in unique(demo$side)){
demo[demo$subject==s & demo$side==l,]$size = demo[demo$subject==s & demo$side==l,]$size + rnorm(1)*7
}
}
plot(1:50, demo$size)
Disculpas por mis pésimas habilidades en R. Así es como se ven los datos (cada cinco puntos consecutivos es un pie de una persona medido a lo largo de los años; cada diez puntos consecutivos son dos pies de la misma persona):
Ahora podemos encajar un montón de modelos:
require(lme4)
summary(lmer(size ~ age + side + (1|subject), demo))
summary(lmer(size ~ age + (1|side) + (1|subject), demo))
summary(lmer(size ~ age + (1|subject/side), demo))
Todos los modelos incluyen un efecto fijo de age
y un efecto aleatorio de subject
, pero trata side
de manera diferente.
-
Modelo 1: efecto fijo de side
. Este es el modelo de @Robert. Resultado: age
sale no significativa ( $t=1.8$ ), la varianza residual es enorme (29,81).
-
Modelo 2: efecto aleatorio cruzado de side
. Este es el modelo "hipotético" de @gung del OP. Resultado: age
sale no significativa ( $t=1.4$ ), la varianza residual es enorme (29,81).
-
Modelo 3: efecto aleatorio anidado de side
. Este es mi modelo. Resultado: age
es muy significativo ( $t=37$ Sí, treinta y siete), la varianza residual es ínfima (0,07).
Esto demuestra claramente que side
debe tratarse como un efecto aleatorio anidado.
Finalmente, en los comentarios @Robert sugirió incluir el efecto global de side
como variable de control. Podemos hacerlo, manteniendo el efecto aleatorio anidado:
summary(lmer(size ~ age + side + (1|subject/side), demo))
summary(lmer(size ~ age + (1|side) + (1|subject/side), demo))
Estos dos modelos no difieren mucho del número 3. El modelo 4 arroja un efecto fijo minúsculo e insignificante de side
( $t=0.5$ ). El modelo 5 arroja una estimación de side
varianza igual a exactamente cero.
0 votos
Por qué querrías tratar lado como un factor aleatorio dado que hay dos y sólo dos niveles del factor? ¿De dónde procede la aleatoriedad en la configuración de su problema?
0 votos
@AaronZeng, dejando de lado la calidad de mi ejemplo, esa es mi pregunta. ¿Hay alguna razón para representar los niveles con efectos aleatorios si se tienen todos los niveles posibles? ¿Y si el factor en cuestión tuviera >2 niveles?
1 votos
@gung Acabo de volver a este hilo - ¿alguna de las respuestas ha ayudado? Si no, ¿qué más te interesa aprender? ¿Quizás tengas tu propia respuesta (si es así, me interesaría saber más sobre este tema)?
2 votos
Hace mucho tiempo que no vuelvo por aquí, @Tim. Aprecio ambas respuestas (las he votado), pero no son exactamente lo que buscaba (probablemente debido a un enunciado de la pregunta insuficientemente claro). He pensado en recopilar una respuesta a partir de algunas cosas que Ben Bolker ha publicado en varios lugares, pero sería un poco de trabajo y nunca lo he hecho. Sin embargo, es algo que debería hacer. Gracias por el empujón.