So ermitteln sie den maximalwert pro gruppe in r
Häufig möchten Sie möglicherweise den Maximalwert jeder Gruppe in einem Datenrahmen in R ermitteln. Glücklicherweise ist dies mithilfe der Funktionen im dplyr- Paket einfach zu bewerkstelligen.
In diesem Tutorial wird erklärt, wie Sie dies mithilfe des folgenden Datenrahmens tun:
#create data frame df <- data.frame(team = c('A', 'A', 'A', 'B', 'B', 'B', 'B'), position = c('G', 'F', 'F', 'G', 'G', 'G', 'F'), points = c(12, 15, 19, 22, 34, 34, 39)) #view data frame df team position points 1 AG 12 2 AF15 3 FY 19 4 BG 22 5 BG 34 6 BG 34 7 BF 39
Beispiel 1: Ermitteln Sie den Maximalwert pro Gruppe
Der folgende Code zeigt, wie man den Maximalwert pro Team und Position ermittelt:
library(dplyr) #find max value by team and position df %>% group_by (team, position) %>% summarize (max = max(points, na.rm= TRUE )) # A tibble: 4 x 3 # Groups: team [?] team position max 1AF 19.0 2 AG 12.0 3 BF 39.0 4 BG 34.0
Beispiel 2: Zeilen zurückgeben, die den Maximalwert pro Gruppe enthalten
Der folgende Code zeigt, wie Zeilen zurückgegeben werden, die den Maximalwert pro Team und pro Position enthalten:
library(dplyr) #find rows that contain max points by team and position df %>% group_by (team, position) %>% filter (points == max(points, na.rm= TRUE )) # A tibble: 5 x 3 # Groups: team, position [4] team position points 1 AG 12.0 2AF 19.0 3 BG 34.0 4 BG 34.0 5BF 39.0
Beispiel 3: Geben Sie eine einzelne Zeile zurück, die den Maximalwert pro Gruppe enthält
Im vorherigen Beispiel gab es zwei Spieler, die in Team A die maximale Punktzahl hatten und beide auf Position G waren. Wenn Sie nur den ersten Spieler mit dem maximalen Wert in eine Gruppe zurückgeben möchten, können Sie den Slice( ) Funktion. wie folgt funktionieren:
library(dplyr) #find rows that contain max points by team and position df %>% group_by (team, position) %>% slice (which.max(points)) # A tibble: 4 x 3 # Groups: team, position [4] team position points 1AF 19.0 2 AG 12.0 3 BF 39.0 4 BG 34.0
Zusätzliche Ressourcen
Der vollständige Leitfaden: So gruppieren und fassen Sie Daten in R zusammen
So filtern Sie Zeilen in R
So entfernen Sie doppelte Zeilen in R