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 )

Regressionslinie nach Gruppe in ggplot2

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 )

Mehrere Regressionslinien in einem einzigen Diagramm in ggplot2

Weitere ggplot2-Tutorials finden Sie hier .

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert