So zeichnen sie mit ggplot2 eine regressionslinie nach gruppe
Wir können die folgende Syntax verwenden, um eine Gruppenregressionslinie mit dem R-Visualisierungspaket ggplot2 zu zeichnen:
ggplot(df, aes (x = x_variable, y = y_variable, color = group_variable)) + geom_point() + geom_smooth(method = " lm ", fill = NA )
Dieses Tutorial bietet ein kurzes Beispiel für die praktische Verwendung dieser Funktion.
Beispiel: Zeichnen von Regressionslinien nach Gruppen mit ggplot2
Angenommen, wir haben den folgenden Datensatz, der die folgenden drei Variablen für 15 verschiedene Schüler zeigt:
- Anzahl der gelernten Stunden
- Prüfungsergebnis erhalten
- Verwendete Lerntechnik (entweder A, B oder C)
#create dataset df <- data.frame(hours=c(1, 2, 3, 3, 4, 1, 2, 2, 3, 4, 1, 2, 3, 4, 4), score=c(84, 86, 85, 87, 94, 74, 76, 75, 77, 79, 65, 67, 69, 72, 80), technique= rep (c(' A ', ' B ', ' C '), each = 5 )) #view dataset df hours technical score 1 1 84 A 2 2 86 A 3 3 85 A 4 3 87 A 5 4 94 A 6 1 74 B 7 2 76 B 8 2 75 B 9 3 77 B 10 4 79 B 11 1 65 C 12 2 67 C 13 3 69 C 14 4 72 C 15 4 80 C
Der folgende Code zeigt, wie eine Regressionslinie gezeichnet wird, die die Beziehung zwischen den gelernten Stunden und der Prüfungspunktzahl für jede der drei Lerntechniken erfasst:
#load ggplot2 library (ggplot2) #create regression lines for all three groups ggplot(df, aes (x = hours, y = score, color = technique)) + geom_point() + geom_smooth(method = " lm ", fill = NA )
Beachten Sie, dass wir in geom_smooth() method = ‚lm“ verwendet haben, um einen linearen Trend anzugeben.
Wir könnten auch andere Glättungsmethoden wie „glm“, „loess“ oder „gam“ verwenden, um nichtlineare Trends in den Daten zu erfassen. Die vollständige Dokumentation für geom_smooth() finden Sie hier .
Beachten Sie, dass wir auch unterschiedliche Formen verwenden könnten, um die Prüfungsergebnisse für jede der drei Gruppen anzuzeigen:
ggplot(df, aes (x = hours, y = score, color = technique, shape = technique)) +
geom_point() +
geom_smooth(method = " lm ", fill = NA )
Weitere ggplot2-Tutorials finden Sie hier .