Seite 2 von 2

Re: ANOVA-Fehlermeldung - models were not all fitted to the same size of dataset

Verfasst: Di Aug 13, 2019 3:50 pm
von statistikolé
jogo hat geschrieben: Di Aug 13, 2019 11:39 am hier zwei Varianten für das Löschen von Beobachtungen mit NA:

Code: Alles auswählen

B <- BOD
B$demand[3] <- NA
B
B[!is.na(B$demand),]
na.omit(B)
Gruß, Jörg
Lieber Jörg

Ich habe nun etwas rumgegooglet bezüglich meinem Problem und meinte, dass mein Befehl

Code: Alles auswählen

na.action=na.omit
welchen ich ja ganz am Schluss in meinem Modell habe gar nicht ausgeführt wird. Kann das sein? Weil grundsätzlich entferne ich damit ja die NAs aus meinen Daten und so sollten beide Modelle ja dann gleich lang sein.

Hier noch einmal meine Befehle:

Code: Alles auswählen

M1_T <- lmer(formula = log(PSQI_globalindex) ~ Zeitpunkt_f + (1|Participant_ID), data = DATA_Long, REML = FALSE, na.action = na.omit)
summary(M1_T)

M2_T <- lmer(formula = log(PSQI_globalindex) ~ Zeitpunkt_f + Testosterone + (1|Participant_ID), data = DATA_Long, REML = FALSE, na.action = na.omit)
summary(M2_T)
##
anova(M1_T, M2_T)
Einen Input, den ich im Internet gefunden habe, ist, dass man den Befehl "na.action" bei einem dataframe nicht anwenden kann. Stimmt das?

Liebe Grüsse und vielen Dank

Re: ANOVA-Fehlermeldung - models were not all fitted to the same size of dataset

Verfasst: Di Aug 13, 2019 4:00 pm
von jogo
Hallo Olé,

in Deinem Fall ist, wenn es so stimmt, na.action= kein Befehl sondern ein Parameter einer Funktion. Nämlich der Funktion lmer().
ja, es gibt diesen Parameter:
https://www.rdocumentation.org/packages ... opics/lmer

und der Standardwert des Parameters ist na.omit:
na.action
a function that indicates what should happen when the data contain `NA`s. The default action (`na.omit`, inherited from the 'factory fresh' value of `getOption("na.action")`) strips any observations with any missing values in any variables.


Insofern gibt es keinen Unterschied bei der Ausführung ob Du
a) na.action=na.omit setzst oder
b) den Parameter nicht angibst.

Normalerweise steht im summary drin, wieviele Beobachtungen weggelassen wurden.
Du könntest beim ersten Modell noch den Parameter subset= verwenden, um die Datenmenge gleichzuziehen:

Code: Alles auswählen

M1_T <- lmer(formula = log(PSQI_globalindex) ~ Zeitpunkt_f + (1|Participant_ID), 
   data = DATA_Long, REML = FALSE, na.action = na.omit, subset=!is.na(Testosterone))
Gruß, Jörg