Ich habe sechs abhängige Variablen (Zähldaten) und mehrere unabhängige Variablen. In einer MMR sieht das Skript folgendermaßen aus:
my.model <- lm(cbind(DV1,DV2,DV3,DV4,DV5,DV6) ~ IV1 + IV2 + ... + IVn)
Da meine Daten jedoch gezählt werden, möchte ich ein verallgemeinertes lineares Modell verwenden und habe Folgendes versucht:
my.model <- glm(cbind(DV1,DV2,DV3,DV4,DV5,DV6) ~ IV1 + IV2 + ... + IVn, family="poisson")
Und erscheint diese Fehlermeldung:
Error in glm.fit(x = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, :
(subscript) logical subscript too long`
Kann mir jemand diese Fehlermeldung erklären oder einen Weg finden, um mein Problem zu lösen?
lm
wenn Sie ihr eine Matrix geben?lm(cbind(DV1,DV2,DV3,DV4,DV5,DV6) ~ IV1 + IV2 + ... + IVn)
Ich musslm(cbind(DV1,DV2,DV3,DV4,DV5,DV6) ~ IV1 + IV2 + ... + IVn)
Ich muss den Befehl manova () folgendermaßen verwenden:summary(manova(my.model))
um eine multivariate Varianzanalyse durchzuführen und die Bedeutung jeder unabhängigen Variablen zu ermitteln. Das ist das endgültige Ziel.summary
für jeden DV.Antworten:
Die kurze Antwort ist, dass
glm
das so nicht funktioniert. Das Objektlm
wird erstelltmlm
, wenn Sie ihm eine Matrix geben, aber dies wird in den Generika nicht allgemein unterstützt und kann ohnehin nicht leicht verallgemeinert werden,glm
da Benutzer in der Lage sein müssen, zweispaltige abhängige Variablen für logistische Regressionsmodelle anzugeben.Die Lösung besteht darin, die Modelle separat zu montieren. Angenommen, Ihre IVs und DVs befinden sich in einem data.frame mit dem Namen
dd
und sind so gekennzeichnet, wie sie in Ihrer Frage stehen. Mit dem folgenden Code wird eine Liste angepasster Modelle erstellt, die nach dem Namen der von ihnen verwendeten abhängigen Variablen indexiert sind:Um die Ergebnisse zu untersuchen, packen Sie einfach Ihre üblichen Funktionen in a
lapply
:Es gibt zweifellos elegantere Möglichkeiten, dies in R zu tun, aber das sollte funktionieren.
quelle
Mir wurde gesagt, dass es multivariate verallgemeinerte lineare (gemischte) Modelle gibt, die sich mit Ihrem Problem befassen. Ich bin kein Experte darüber, aber ich würde einen Blick auf die SABRE-Dokumentation und dieses Buch über multivariate GLMs werfen . Vielleicht helfen sie ...
quelle
lm
eine Matrix für eine abhängige Variable sollte wohl gesehen mehr als syntaktischer Zucker werden, als als Ausdruck eines multivariaten Modell: wenn es waren eine multivariate (normal) Modell würde es derjenige sein , wo die Fehler sind " sphärisch ', dh eine, bei der Sie für jedes Element der abhängigen Variablen separate Regressionen hätten ausführen und die gleiche Antwort erhalten können.