Seite 1 von 1

aov(AV ~ -1 + UV) - wieso "-1"?

BeitragVerfasst: Do 24. Aug 2017, 16:31
von forenthomas
Hallo zusammen,

ich bin gerade in einem Buch über den R-Befehl

Code: Alles auswählen
daten.anova <- aov(abhängigigeVariable ~ -1 + Kategorien, data = daten)


und hier insbesondere die "-1" gestolpert. Es geht um die Bewertung von Produkten durch 4 verschiedene Kundengruppen. Im Output werden dann für die Kundengruppen 4 Freiheitsgrade angegeben.

Erkläre ich mir das richtig, dass R durch das "-1" quasi eine eigene Kontrollgruppe einbaut und somit die vier Kundengruppen mit einer Nulllinie vergleicht? das würde auch erklären, warum ich einen erheblich höheren F-Wert erhalte, als wenn ich die "-1" rausnehme und dann auch wie zu erwarten nur 3 Freiheitsgrade erhalte.

Wer das Beispiel komplett nachvollziehen möchte:
Code: Alles auswählen
# Packages
#install.packages("multcomp")  # für grafische Darstellung
#library(multcomp)

# Data
satData <- read.csv("http://goo.gl/UDv12g")
satData$Segment <- as.factor(satData$Segment)

# Analysis
sat.anova1 <- aov(iProdSAT ~ - 1 + Segment, data = satData)
summary(sat.anova)
#par(mar=c(4,8,4,2))   # grafische Darstellung
#plot(glht(sat.anova))

sat.anova2 <- aov(iProdSAT ~ Segment, data = satData)
summary(sat.anova2)
#par(mar=c(4,8,4,2))   # grafische Darstellung
#plot(glht(sat.anova2))


Danke und Gruß, Thomas

P.S. Ich weiss, das R Forum wäre besser, aber das ist so inaktiv ;)

Re: aov(AV ~ -1 + UV) - wieso "-1"?

BeitragVerfasst: Fr 25. Aug 2017, 17:16
von bele
Hallo forenthomas,

forenthomas hat geschrieben:P.S. Ich weiss, das R Forum wäre besser, aber das ist so inaktiv ;)


Das kann aber wirklich nur daran liegen, dass Du im falschen R Forum unterwegs bist. Es gibt zwei deutschsprachige, und eines von zwei Problemen mit dem einen hast Du schon angesprochen. Probier mal das andere. Ich lade Dich herzlich ein.

Was Deinen Code angeht: Du hast da oben einen Fehler drin. Du errechnest sat.anova1 uind rechnest dann mit sat.anova (ohne 1) weiter. Vielleicht liegt da in Deinem Namespace noch irgendein sat.anova herum, dass in diesen Code hier gar nicht mehr gehört.

Rs Formelschreibweise für die Modellspezifikation geht primär davon aus, dass man einen Intercept bestimmen möchte. Wenn man ein Modell ohne Intercept spezifizieren möchte, muss man "-1" in das Modell schreiben. Weitere spannende Möglichkeiten aber auch Besonderheiten des Formelinterfaces liest Du unter
Code: Alles auswählen
help("formula")


Und Du hast Recht: Das ist hier das falsche Forum für R-spezifische Fragen.

LG,
Bernhard

Re: aov(AV ~ -1 + UV) - wieso "-1"?

BeitragVerfasst: Mo 28. Aug 2017, 10:40
von forenthomas
bele hat geschrieben:Rs Formelschreibweise für die Modellspezifikation geht primär davon aus, dass man einen Intercept bestimmen möchte. Wenn man ein Modell ohne Intercept spezifizieren möchte, muss man "-1" in das Modell schreiben. Weitere spannende Möglichkeiten aber auch Besonderheiten des Formelinterfaces liest Du unter


Danke!

Und ich glaube, ich habe das andere dann auch gefunden :)

Gruß, Thomas