Si lo que muestra funciona para una lmer
fórmula para un término de efectos aleatorios, entonces debería poder usar funciones del paquete de splines que viene con R para configurar las funciones básicas relevantes.
require("lme4")
require("splines")
lmer(counts ~ dependent_variable + (bs(t) | ID), family="poisson")
Dependiendo de lo que quieras hacer, también debes mirar el paquete gamm4 y el paquete mgcv . El primero es esencialmente formalizar el bs()
bit en la lmer()
llamada anterior y permite que se realice la selección de suavidad como parte del análisis. El último con función gam()
permite cierto grado de flexibilidad en el ajuste de modelos como este (si entiendo lo que está tratando de hacer). Parece que quieres tendencias separadas dentro ID
? Un enfoque de efectos más fijos sería algo como:
gam(counts ~ dependent_variable + ID + s(t, by = ID) , family="poisson")
Los efectos aleatorios se pueden incluir en gam()
modelos usando los s(foo, bs = "re")
términos de tipo donde foo
estaría ID
en su ejemplo. Si tiene sentido combinar el by
término idea con un efecto aleatorio es algo en lo que pensar y no algo en lo que esté calificado para comentar.