So erstellen sie ein qq-diagramm in ggplot2 (mit beispiel)
Ein QQ-Plot, kurz für „Quantil-Quantil“, wird verwendet, um zu bewerten, ob ein Datensatz möglicherweise aus einer theoretischen Verteilung stammt.
In den meisten Fällen wird dieser Diagrammtyp verwendet, um zu bestimmen, ob ein Datensatz einer Normalverteilung folgt oder nicht.
Wenn die Daten normalverteilt sind, liegen die Punkte in einem QQ-Diagramm auf einer geraden diagonalen Linie.
Wenn umgekehrt die Punkte erheblich von der geraden Diagonale abweichen, ist es weniger wahrscheinlich, dass die Daten normalverteilt sind.
Um einen QQ-Plot in ggplot2 zu erstellen, können Sie die Funktionen stat_qq() und stat_qq_line() wie folgt verwenden:
library (ggplot2)
ggplot(df, aes(sample=y)) +
stat_qq() +
stat_qq_line()
Die folgenden Beispiele zeigen, wie Sie diese Syntax verwenden, um ein QQ-Diagramm in zwei verschiedenen Szenarien zu erstellen.
Beispiel 1: QQ-Diagramm für normale Daten
Der folgende Code zeigt, wie man einen normalverteilten Datensatz mit 200 Beobachtungen generiert und ein QQ-Diagramm für den Datensatz in R erstellt:
library (ggplot2) #make this example reproducible set. seeds (1) #create some fake data that follows a normal distribution df <- data. frame (y=rnorm(200)) #create QQ plot ggplot(df, aes(sample=y)) + stat_qq() + stat_qq_line()
Wir können sehen, dass die Punkte hauptsächlich entlang der geraden diagonalen Linie liegen, mit einigen geringfügigen Abweichungen entlang der einzelnen Enden.
Basierend auf dieser Grafik gehen wir davon aus, dass dieser Datensatz normalverteilt ist.
Beachten Sie, dass wir bei Bedarf auch die Farb- und Größenargumente verwenden können, um die Farbe und Größe der Punkte im Diagramm zu ändern:
library (ggplot2) #make this example reproducible set. seeds (1) #create some fake data that follows a normal distribution df <- data. frame (y=rnorm(200)) #create QQ plot ggplot(df, aes(sample=y)) + stat_qq(size= 2.5 , color=' red ') + stat_qq_line()
Beispiel 2: QQ-Diagramm für nicht normale Daten
Der folgende Code zeigt, wie ein QQ-Diagramm für einen Datensatz erstellt wird, der einer Exponentialverteilung mit 200 Beobachtungen folgt:
#make this example reproducible set. seeds (1) #create some fake data that follows an exponential distribution df <- data. frame (y=rexp( 200 , rate= 3 )) #create QQ plot ggplot(df, aes(sample=y)) + stat_qq() + stat_qq_line()
Wir sehen, dass die Punkte erheblich von der Diagonalen abweichen. Dies zeigt deutlich, dass der Datensatz nicht normalverteilt ist.
Dies sollte sinnvoll sein, da wir angegeben haben, dass die Daten einer Exponentialverteilung folgen sollen.
Zusätzliche Ressourcen
Die folgenden Tutorials erklären, wie Sie andere häufige Aufgaben in ggplot2 ausführen:
So zeichnen Sie mehrere Linien in ggplot2
So zeichnen Sie Mittelwert und Standardabweichung in ggplot2 auf
So ändern Sie Linienfarben in ggplot2