So berechnen sie die kumulative summe pro gruppe in r


Sie können die folgenden Methoden verwenden, um eine kumulative Summe pro Gruppe in R zu berechnen:

Methode 1: Verwenden Sie Base R

 df$cum_sum <- ave(df$values_var, df$group_var, FUN=cumsum)

Methode 2: dplyr verwenden

 library (dplyr)

df %>% group_by(group_var) %>% mutate(cum_sum = cumsum(values_var))

Methode 3: Verwenden Sie data.table

 library (data.table)

setDT(df)[, cum_sum := cumsum(values_var), group_var] 

Die folgenden Beispiele zeigen, wie jede Methode in der Praxis mit dem folgenden Datenrahmen in R verwendet wird:

 #create data frame
df <- data. frame (store=rep(c(' A ', ' B ', ' C '), each= 4 ),
                 sales=c(3, 4, 4, 2, 5, 8, 9, 7, 6, 8, 3, 2))

#view data frame
df

   blind sales
1 to 3
2 to 4
3 to 4
4 to 2
5 B 5
6 B 8
7 B 9
8 B 7
9 C 6
10 C 8
11 C 3
12 C 2

Beispiel 1: Berechnen Sie die kumulative Summe pro Gruppe mithilfe der R-Basis

Der folgende Code zeigt, wie die R-Datenbankfunktion ave() verwendet wird, um die kumulative Summe der Verkäufe , gruppiert nach Filiale, zu berechnen:

 #add column to show cumulative sales by store
df$cum_sales <- ave(df$sales, df$store, FUN=cumsum)

#view updated data frame
df

   store sales cum_sales
1 to 3 3
2 to 4 7
3 to 4 11
4 to 2 13
5 B 5 5
6 B 8 13
7 B 9 22
8 B 7 29
9 C 6 6
10 C 8 14
11 C 3 17
12 C 2 19

Die neue Spalte „ cum_sales“ zeigt die kumulierte Summe der Verkäufe , gruppiert nach Filiale, an.

Beispiel 2: Berechnen Sie die kumulative Summe pro Gruppe mit dplyr

Der folgende Code zeigt, wie verschiedene Funktionen aus dem dplyr-Paket in R verwendet werden, um die kumulative Summe der Verkäufe , gruppiert nach Geschäft, zu berechnen:

 library (dplyr)

#add column to show cumulative sales by store
df %>% group_by(store) %>% mutate(cum_sales = cumsum(sales))

#view updated data frame
df

# A tibble: 12 x 3
# Groups: store [3]
   store sales cum_sales
         
 1 to 3 3
 2 to 4 7
 3 to 4 11
 4 to 2 13
 5 B 5 5
 6 B 8 13
 7 B 9 22
 8 B 7 29
 9 C 6 6
10 C 8 14
11 C 3 17
12 C 2 19

Die neue Spalte „ cum_sales“ zeigt die kumulierte Summe der Verkäufe , gruppiert nach Filiale, an.

Beispiel 3: Berechnen Sie die kumulative Summe nach Gruppe mithilfe von data.table

Der folgende Code zeigt, wie verschiedene Funktionen aus dem data.table-Paket in R verwendet werden, um die kumulative Summe der Verkäufe , gruppiert nach Filiale, zu berechnen:

 library (data.table)

#add column to show cumulative sales by store
setDT(df)[, cum_sales := cumsum(sales), store] 

#view updated data frame
df

    store sales cum_sales
 1: A 3 3
 2: A 4 7
 3: A 4 11
 4: A 2 13
 5: B 5 5
 6: B 8 13
 7: B 9 22
 8: B 7 29
 9: C 6 6
10: C 8 14
11: C 3 17
12: C 2 19

Die neue Spalte „ cum_sales“ zeigt die kumulierte Summe der Verkäufe , gruppiert nach Filiale, an.

Hinweis : Alle drei Methoden führen zum gleichen Ergebnis. Allerdings sind die Methoden dplyr und data.table tendenziell schneller, wenn mit extrem großen Datenrahmen gearbeitet wird.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere gängige Berechnungen in R durchführen:

So berechnen Sie die Summe nach Gruppe in R
So berechnen Sie den Mittelwert pro Gruppe in R
So berechnen Sie die Standardabweichung nach Gruppe in R

Einen Kommentar hinzufügen

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