Verwendung des pipe-operators in r (mit beispielen)


Sie können den Pipe-Operator ( %>% ) in R verwenden, um eine Folge von Operationen zusammenzufassen.

Dieser Operator wird am häufigsten mit dem dplyr- Paket in R verwendet, um eine Folge von Operationen an einem Datenrahmen auszuführen.

Die grundlegende Syntax des Pipe-Operators lautet:

 df %>% 
  do_this_operation %>% 
  then_do_this_operation %>%
  then_do_this_operation ...

Der Pipe-Operator übergibt einfach die Ergebnisse einer Operation an die nächste Operation darunter.

Der Vorteil der Verwendung des Pipe-Operators besteht darin, dass der Code dadurch extrem einfach zu lesen ist.

Die folgenden Beispiele zeigen, wie der Pipe-Operator in verschiedenen Szenarien mit dem in R integrierten mtcars- Datensatz verwendet wird.

 #view first six rows of mtcars dataset
head(mtcars)

                   mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3,460 20.22 1 0 3 1

Beispiel 1: Verwenden Sie den Pipe-Operator, um eine Variable zusammenzufassen

Der folgende Code zeigt, wie Sie mit dem Pipe-Operator ( %>% ) nach der Variable cyl gruppieren und dann den Durchschnittswert der Variablen mpg zusammenfassen:

 library (dplyr)

#summarize mean mpg grouped by cyl
mtcars %>% 
  group_by(cyl) %>% 
  summarize(mean_mpg = mean(mpg))

# A tibble: 3 x 2
    cyl mean_mpg
      
1 4 26.7
2 6 19.7
3 8 15.1

Aus dem Ergebnis können wir sehen:

  • Der durchschnittliche mpg-Wert für Autos mit einem Zylinderwert von 4 beträgt 26,7 .
  • Der durchschnittliche mpg-Wert für Autos mit einem Zylinderwert von 6 beträgt 19,7 .
  • Der durchschnittliche mpg-Wert für Autos mit einem Zylinderwert von 8 beträgt 15,1 .

Beachten Sie, dass der Pipe-Operator auch die Interpretation des Codes erleichtert.

Im Grunde sagt er:

  • Nehmen Sie den mtcars- Datenrahmen.
  • Gruppieren Sie es nach der cyl -Variablen.
  • Fassen Sie dann den Durchschnittswert der mpg- Variablen zusammen.

Beispiel 2: Verwenden Sie den Pipe-Operator, um mehrere Variablen zu gruppieren und zusammenzufassen

Der folgende Code zeigt, wie Sie mit dem Pipe-Operator ( %>% ) nach den Variablen cyl und am gruppieren und anschließend den Mittelwert der Variablen mpg und die Standardabweichung der Variablen hp zusammenfassen:

 library (dplyr)

#summarize mean mpg and standard dev of hp grouped by cyl and am
mtcars %>% 
  group_by(cyl, am) %>% 
  summarize(mean_mpg = mean(mpg),
            sd_hp = sd(hp))

# A tibble: 6 x 4
# Groups: cyl[3]
    cyl am mean_mpg sd_hp
        
1 4 0 22.9 19.7 
2 4 1 28.1 22.7 
3 6 0 19.1 9.18
4 6 1 20.6 37.5 
5 8 0 15.0 33.4 
6 8 1 15.4 50.2 

Aus dem Ergebnis können wir sehen:

  • Für Autos mit einem Zylinderwert von 4 und einem AM-Wert von 0 beträgt der durchschnittliche mpg-Wert 22,9 und die Standardabweichung des PS-Werts beträgt 19,7 .
  • Für Autos mit einem Zylinderwert von 4 und einem AM-Wert von 1 beträgt der durchschnittliche mpg-Wert 28,1 und die Standardabweichung des PS-Werts beträgt 22,7 .

Und so weiter.

Beachten Sie auch hier, dass der Pipe-Operator auch die Interpretation des Codes erleichtert.

Im Grunde sagt er:

  • Nehmen Sie den mtcars- Datenrahmen.
  • Gruppieren Sie es nach den Variablen cyl und am .
  • Fassen Sie dann den Mittelwert der mpg- Variablen und die Standardabweichung der hp- Variablen zusammen.

Beispiel 3: Verwenden Sie den Pipe-Operator, um neue Variablen zu erstellen

Der folgende Code zeigt, wie der Pipe-Operator ( %>% ) mit der Mutate- Funktion im dplyr- Paket verwendet wird, um zwei neue Variablen im mtcars-Datenrahmen zu erstellen:

 library (dplyr)

#add two new variables in mtcars
new_mtcars <- mtcars %>%
                mutate(mpg2 = mpg*2,
                       mpg_root = sqrt(mpg))

#view first six rows of new data frame
head(new_mtcars)

   mpg cyl disp hp drat wt qsec vs am gear carb mpg2 mpg_root
1 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4 42.0 4.582576
2 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4 42.0 4.582576
3 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1 45.6 4.774935
4 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1 42.8 4.626013
5 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2 37.4 4.324350
6 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1 36.2 4.254409

Aus dem Ergebnis können wir sehen:

  • Die neue Spalte mpg2 enthält die Werte aus der Spalte mpg multipliziert mit 2.
  • Die neue Spalte mpg_root enthält die Quadratwurzel der Werte in der Spalte mpg .

Beachten Sie auch hier, dass der Pipe-Operator auch die Interpretation des Codes erleichtert.

Im Grunde sagt er:

  • Nehmen Sie den mtcars- Datenrahmen.
  • Erstellen Sie eine neue Spalte namens mpg2 und eine neue Spalte namens mpg_root .

Verwandt: So verwenden Sie die Funktion transmute() in dplyr

Zusätzliche Ressourcen

Die folgenden Tutorials erklären, wie Sie andere gängige Funktionen in R verwenden:

So verwenden Sie den Tilde-Operator (~) in R
So verwenden Sie den Dollarzeichenoperator ($) in R
So verwenden Sie den „NOT IN“-Operator in R
So verwenden Sie den %in%-Operator in R

Einen Kommentar hinzufügen

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