nominale Variablen in Dummy-Variablen umwandeln

Allgemeine Statistik mit R, die Test-Methode ist noch nicht bekannt, ich habe noch keinen Plan!

Moderatoren: EDi, jogo

jogo
Beiträge: 2086
Registriert: Fr Okt 07, 2016 8:25 am

Re: nominale Variablen in Dummy-Variablen umwandeln

Beitrag von jogo »

Luisa93 hat geschrieben: Mo Aug 05, 2019 10:24 pm Kann es manchmal trotzdem sinnvoll sein, sich zunächst die einzelnen Variablen anzuschauen und dann im Gesamten?
na klar
Gibt es eine Möglichkeit die unabhängigen Variablen auf Multikollinarität zu überprüfen, wenn sich nicht numerisch sind?
Das ist eine interessante Frage. Die Definition der Multikolliniarität beinhaltet auch die mögliche Bildung von Linearkombinationen.
Für die Bildung von Linearkombinationen muss man mit einem Skalar multiplizieren können und addieren können.
Wie dies bei nichtnumerischen Daten aussehen soll, kann ich mir noch nicht recht vorstellen.

Gruß, Jörg
Luisa93
Beiträge: 16
Registriert: Mo Jul 29, 2019 2:32 pm

Re: nominale Variablen in Dummy-Variablen umwandeln

Beitrag von Luisa93 »

Vielen Dank schonmal für die Hilfe bis hier hin! :)

Es haben sich allerdings weitere Fragen ergeben:

1. Ich habe gesehen, dass man in SPSS eine schrittweise Regression z.B. mittels einer Rückwärtselimination durchführen kann. Ist das in R auch möglich?

2. In der Regressionsanalyse hat R automatisch die Referenzkategorie festgelegt. Ich hätte eigentlich gerne, die Ausprägung mit der meisten Häufigkeit in der Refernzgruppe. Ist das möglich?
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: nominale Variablen in Dummy-Variablen umwandeln

Beitrag von EDi »

1. Ich habe gesehen, dass man in SPSS eine schrittweise Regression z.B. mittels einer Rückwärtselimination durchführen kann. Ist das in R auch möglich?
Ja, z.B. ?step...
In der Regressionsanalyse hat R automatisch die Referenzkategorie festgelegt. Ich hätte eigentlich gerne, die Ausprägung mit der meisten Häufigkeit in der Refernzgruppe. Ist das möglich?
Ja. Standardmäßig sind die Faktorlevels alphabetisch sortiert und der erste wird als Referenz genommen. Zum ändern siehe ?relevel.
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Luisa93
Beiträge: 16
Registriert: Mo Jul 29, 2019 2:32 pm

Re: nominale Variablen in Dummy-Variablen umwandeln

Beitrag von Luisa93 »

relevel() habe ich schon probiert, bekomme aber eine Fehlermeldung zurückgegeben.
relevel().PNG
relevel().PNG (7.02 KiB) 548 mal betrachtet
Ist es möglich, gleich einen Befehl festzulegen, dass er immer das Merkmal, mit der meisten Häufigkeit nimmt? Oder muss jeweils vorher ermittelt werden, welches am häufigsten vorkommt?
Luisa93
Beiträge: 16
Registriert: Mo Jul 29, 2019 2:32 pm

Re: nominale Variablen in Dummy-Variablen umwandeln

Beitrag von Luisa93 »

Wie genau muss der Code für step() aussehen. Es tut mir leid für solche Fragen. Aber ich kenne mich leider wirklich nicht damit aus und hab daher meine Schwierigkeiten. Ich möchte mit einem Signifikanzniveau von 10% vorgehen.
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: nominale Variablen in Dummy-Variablen umwandeln

Beitrag von EDi »

Vielleicht hilft das ja weiter:

Code: Alles auswählen

x <- factor(c("A", "B", "C"), ordered = TRUE)
relevel(x, "B")
str(x)

y <- factor(c("A", "B", "C"))
relevel(y, "B")
str(y)
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: nominale Variablen in Dummy-Variablen umwandeln

Beitrag von EDi »

st es möglich, gleich einen Befehl festzulegen, dass er immer das Merkmal, mit der meisten Häufigkeit nimmt? Oder muss jeweils vorher ermittelt werden, welches am häufigsten vorkommt?
Du kannst dir deine eigene relevel funktion schreiben die immer die häufigste Grupper als referent nimmt.

Z.B. so

Code: Alles auswählen


my_relevel <- function(x) {
  relevel(y, names(which.max(table(x)))[1])
}

x <- factor(sample(c("A", "B", "B", "C")))
my_relevel(x)
x2 <- factor(sample(c("A", "B", "C", "C")))
my_relevel(x2)
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: nominale Variablen in Dummy-Variablen umwandeln

Beitrag von EDi »

Wie genau muss der Code für step() aussehen.
Siehe ?step. Oder

Code: Alles auswählen

example(step)
step() macht das aber Anhand vom AIC als Kriterium.
Aber diese stepwise Methoden taugen in den meisten Fällen sowieso nichts, siehe z.B. https://stats.stackexchange.com/questio ... 0856#20856

Anstatt step() könnte man auch einfach alle möglichen Modelle rechnen und das beste (anhand irgendeines Kriteriums) nehmen (z.b. mit dredge() https://www.rdocumentation.org/packages ... ics/dredge), aber das ist auch nicht unbedingt besser...

Aus dem Satz hier
Ich möchte mit einem Signifikanzniveau von 10% vorgehen.
lese ich aber heraus dass du p-werte als Kriterium haben willst? Da will ich besser keine weiteren Tipps geben - da halte ich noch weniger von...
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Luisa93
Beiträge: 16
Registriert: Mo Jul 29, 2019 2:32 pm

Re: nominale Variablen in Dummy-Variablen umwandeln

Beitrag von Luisa93 »

Hat beides geklappt! Vielen Dank!
x <- factor(c("A", "B", "C"), ordered = TRUE)
relevel(x, "B")
str(x)
Musste hier allerdings ordered = FALSE nehmen.

Ich wollte dies eigentlich anhand einem partiellen F-Test machen. Dachte man bräuchte da evtl. auch ein Signifikanzniveau. Bin da etwas überfragt :)
Kann mir da jemand weiterhelfen?
Antworten