Kann lmer () Splines als zufällige Effekte verwenden?

19

Angenommen, wir arbeiten an einem Zufallseffektmodell einiger Zählungsdaten im Zeitverlauf und möchten einige Trends überprüfen. Normalerweise würden Sie etwas tun wie:

lmer(counts ~ dependent_variable + (1+t+I(t^2)|ID), family="poisson")

eine quadratische Form für einschließen t. Ist es möglich, ausgefeiltere Glättungstechniken wie einen LOESS-Glätter oder Splines zu verwenden, um diese Beziehung zu modellieren?

Fomite
quelle

Antworten:

25

Wenn das, was Sie anzeigen, für eine lmerFormel für einen Ausdruck mit zufälligen Effekten funktioniert, sollten Sie Funktionen aus dem Splines- Paket verwenden können, das mit R geliefert wird, um die relevanten Basisfunktionen einzurichten.

require("lme4")
require("splines")
lmer(counts ~ dependent_variable + (bs(t) | ID), family="poisson")

Je nachdem, was Sie tun möchten, sollten Sie sich auch das gamm4- Paket und das mgcv- Paket ansehen . Ersteres formalisiert im Wesentlichen das bs()Bit im lmer()obigen Aufruf und ermöglicht die Auswahl der Glätte als Teil der Analyse. Letzteres mit Funktion gam()ermöglicht ein gewisses Maß an Flexibilität bei der Anpassung von Modellen wie diesem (wenn ich verstehe, was Sie versuchen zu tun). Es sieht so aus, als ob Sie separate Trends möchten ID? Ein Ansatz mit festeren Effekten wäre wie folgt:

gam(counts ~ dependent_variable + ID + s(t, by = ID) , family="poisson")

Zufällige Effekte können einbezogen werden gam()Modelle mit Hilfe der s(foo, bs = "re")Art Bedingungen , wo foowäre IDin Ihrem Beispiel. Ob es sinnvoll ist, den byBegriff Idee mit einem Zufallseffekt zu kombinieren, ist eine Überlegung und nicht etwas, das ich kommentieren kann.

Setzen Sie Monica - G. Simpson wieder ein
quelle