Überprüfen der Verteilung und Testen auf Normalverteilung
Schiefe und Kurtosis
Die Schiefe ist ein Maß für die Symmetrie. In der Regel zeigt die negative Schiefe an, dass der Mittelwert der Datenwerte geringer ist als der Median, und die Datenverteilung ist linksgerichtet. Eine positive Schiefe würde darauf hinweisen, dass der Mittelwert der Datenwerte größer ist als der Median und die Datenverteilung rechtsschwanger. Schiefe und Kurtosis einer Verteilung können mit dem Befehl describe berechnet werden.
describe(Daten$SDS)
Shapiro-Wilk-Test und Kolmogorov-Smirnov-Test
Mit dem Shapiro-Wilk-Test kann auf Normalverteilung getestet werden. Aber Achtung: Der Test funktioniert bei großen Stichproben nicht bzw. wird bei großen Stichproben praktisch immer signifikant. Wenn der Test signifikant wird, dann liegt KEINE Normalverteilung vor!shapiro.test(Daten$SDS)
Das gleich gilt für den Kolmogorov-Smirnov-Test.
ks.test(Daten$SDS, 'pnorm')
Ausgabe der Häufigkeiten als Balkendiagramm und Histogramm
Besser geeignet ist daher die visuelle Prüfung, z.B. die Ausgabe der Häufigkeiten als Balkendiagramm...freq <- table(Daten$SDS)
barplot(freq, main="SDS Scores", col=c("red"))
(Daten vom psychomeda Depression-Test)
...oder die Ausgabe als Histogramm
Dem Histogramm kann auch leicht die Normalverteilung hinzugefügt werden.
m<-mean(Daten$SDS)
std<-sqrt(var(Daten$SDS))
hist(Daten$SDS, density=20, breaks=30, prob=TRUE, xlab="", main="",xlim=c(20, 60))
curve(dnorm(x, mean=m, sd=std), col="darkblue", lwd=2, add=TRUE, yaxt="n")
Verwendete Parameter
- density = 20: Transparenz der Balken
- breaks = 30: Aufteilung anhand von 30 Grenzpunkten
- prob=TRUE: Es werden nicht Häufigkeiten sondern Wahrscheinlichkeiten angezeigt
- xlab: Benennung der X-Achse
- main: Diagramm-Titel
- xlim: Minimum und Maximum der X-Achse
- col: Farbton der Kurve
- lwd: Dicke der Kurve
Q-Q Diagramm
Das sog. Quantil-Quantil-Diagramm vergleicht die tatsächliche Verteilung mit der idealtypischen Normalverteilung – mit Hilfe der Quantile. Die Punkte sollten möglichst auf die Linie liegen.
Daten$zSDS <- scale(Daten$SDS)
qqnorm(Daten$zSDS)
qqline(Daten$zSDS)