Datentransformation

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

Moderatoren: EDi, jogo

Antworten
19Angel96
Beiträge: 3
Registriert: Do Okt 03, 2019 5:42 pm

Datentransformation

Beitrag von 19Angel96 »

Hallo Zusammen,

da die Daten meiner Stichprobe leider nicht normalverteilt sind, möchte ich gerne eine Datentransformation durchführen.

Ich habe für die rechtsschiefe Verteilung folgenden Befehl verwendet:
Testrohwerte$Arbeitszufriedenheit<-log10(10*Testrohwerte$Arbeitszufriedenheit)

Für die restlichen Daten liegt eine linksschiefe Verteilung vor. Ich habe gelesen, dass die Datentransformation hier prinzipiell genauso funktioniert, nur dass man die Daten erstmal spiegeln muss, damit man eine rechtsschiefe Verteilung hat. Leider habe ich hierzu keinen Befehl gefunden. Kann mir hierbei jemand helfen?

Vielen Dank für schon mal für Eure Unterstützung.
Viele Grüße :)
bigben
Beiträge: 1779
Registriert: Mi Okt 12, 2016 9:09 am

Re: Datentransformation

Beitrag von bigben »

Hallo Angel,

ich zweifle, ob Daten spiegeln das richtige für Dein Ausgangsproblem ist und würde Dich ermutigen, erstmal zu schildern, warum Du glaubst, normalverteilte Daten zu brauchen.

Spiegeln kann man Daten, indem man sie von einer Konstanten abzieht, so wie in diesem Beispiel:

Code: Alles auswählen

beispiel <- rbeta(500, 3, 15)  # schief verteilte Werte als Beispiel
hist(beispiel, xlim = c(0, 2), col ="darkgreen")                   
rueckwaerts <- 2 - beispiel  # Konstante hier beliebig als 2 gewählt
hist(rueckwaerts, add = TRUE, col = "darkred")

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Hufeisen
Beiträge: 158
Registriert: Fr Aug 31, 2018 6:34 pm

Re: Datentransformation

Beitrag von Hufeisen »

Kümmer dich erst mal um bigbens Anmerkungen. Ich wollte nur einwerfen, dass bei Umfragedaten das Spiegeln statt mit einer Konstante eventuell mit einer Invertierung der Skala einfacher zu interpretieren ist. Das geht so: Maximum - Wert + Minimum. Wenn bei deinen Items zuvor hohe Werte eine stärkere Ausprägung des abgefragten Merkmals angezeigt haben, zeigen sie danach die Abwesenheit des Merkmals an.
19Angel96
Beiträge: 3
Registriert: Do Okt 03, 2019 5:42 pm

Re: Datentransformation

Beitrag von 19Angel96 »

Hallo bigben,

in meinem Skript von meiner Statistik Vorlesung habe ich gelesen, dass man die Daten bei einer extremen links oder rechts Verteilung transformieren sollte, damit man mit einer Normalverteilung die gängigen Methoden wie z.B. die Korrelstionsanalyse nach Bravais Pearson anwenden kann. Ich werde deine Vorgehensweise auf jeden Fall ausprobieren. Danke :)
bigben
Beiträge: 1779
Registriert: Mi Okt 12, 2016 9:09 am

Re: Datentransformation

Beitrag von bigben »

19Angel96 hat geschrieben: Sa Okt 05, 2019 9:27 pm... damit man mit einer Normalverteilung die gängigen Methoden wie z.B. die Korrelstionsanalyse nach Bravais Pearson anwenden kann.
Hallo Angel,

"die gängigen Methoden" ist sehr unscharf formuliert und oft genug falsch. So auch in Deinem Beispiel der Bravais-Pearson-Korrelation: die gibt Dir im Wesentlichen zwei Dinge zurück: Einen Korrelationskoeffizienten ρ und eine p-Wert p.

Der Bestimmung des Korrelationskoeffizienten ρ ist die Normalverteilung erst einmal völlig egal. ρ ist ein Maß für die Linearität der Daten und das Vorzeichen gibt die Richtung (steigend oder fallend) der Regressionsgeraden an. Dafür muss nichts normalverteilt sein.

R bestimmt den p-Wert normalerweise über einen Test, der die t-Verteilung nutzt. Dafür müssten die Daten streng genommen multivariat normalverteilt sein. Du erreichst mit Deiner ganzen Transformiererei vielleicht annähernde Normalverteilung eines Wertes. Das ist auch eine notwendige, aber keine hinreichende Bedingung für multivariate Normalverteilung. Was Du Dir mit dieser ganzen Umcodiererei einkaufst sind nachher schwer verständliche Ergebnisse.

Wäre es nicht viel einfacher, sich nach einem anderen Testverfahren für die Korrelation umzuschauen? Hier ein paar Vorschläge, wie das ohne t-Verteilung gehen könnte: https://en.wikipedia.org/wiki/Pearson_correlation_coefficient#Inference

Ich möchte das Transformieren von Daten nicht verunglimpfen und gerade die logarithmische Transformation (und auch das Zentrieren) hat unbestreitbaren Wert. Ich möchte aber davor warnen, im nachhinein schwer verständliche Ergebnisse zu produzieren, nur um eine Normalverteilung zu erzwingen, die man oft genug gar nicht braucht.
Nimm nur die Spearman-Korrelation. Das ist eine Korrelation angewendet auf Ränge. Ränge können aber von vorneherein nicht normalverteilt sein. Trotzdem stört sich keiner daran.

Kurzum: Plotte die Daten, überlege was Du von Ihnen wissen willst und entscheide im Einzelfall maßvoll, was wirklich transformiert werden muss.
Es wird weniger sein als Du glaubst.

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Antworten