logo

Gruppieren Sie nach Funktion in R mit Dplyr

Die Funktion Group_by() gehört zum dplyr-Paket in der Programmiersprache R, das die Datenrahmen gruppiert. Die Funktion Group_by() allein liefert keine Ausgabe. Darauf sollte die Funktion „summarise()“ mit einer entsprechenden auszuführenden Aktion folgen. Es funktioniert ähnlich wie GROUP BY in SQL und die Pivot-Tabelle in Excel.

Syntax:



group_by(col,…)

Syntax:

group_by(col,..) %>% summarise(action)



Der verwendete Datensatz:

Sample_Superstore

Group_by() aktiviert A einzelne Spalte

Dies ist die einfachste Möglichkeit, eine Spalte zu gruppieren. Übergeben Sie einfach den Namen der zu gruppierenden Spalte in der Funktion „group_by()“ und die Aktion, die für diese gruppierte Spalte ausgeführt werden soll, in der Funktion „summarise()“.



Beispiel: Gruppieren einer einzelnen Spalte nach group_by()

Vicky Kaushal Alter

R




library>(dplyr)> df =>read.csv>(>'Sample_Superstore.csv'>)> df_grp_region = df %>%>group_by>(Region) %>%> >summarise>(total_sales =>sum>(Sales),> >total_profits =>sum>(Profit),> >.groups =>'drop'>)> View>(df_grp_region)>

>

>

Ausgabe:

Group_by() für mehrere Spalten

Die Funktion Group_by() kann auch für zwei oder mehr Spalten ausgeführt werden. Die Spaltennamen müssen in der richtigen Reihenfolge sein. Die Gruppierung erfolgt entsprechend dem ersten Spaltennamen in der Funktion „group_by“ und anschließend erfolgt die Gruppierung entsprechend der zweiten Spalte.

Beispiel: Gruppieren mehrerer Spalten

R




library>(dplyr)> df =>read.csv>(>'Sample_Superstore.csv'>)> df_grp_reg_cat = df %>%>group_by>(Region, Category) %>%> >summarise>(total_Sales =>sum>(Sales),> >total_Profit =>sum>(Profit),> >.groups =>'drop'>)> View>(df_grp_reg_cat)>

>

>

Ausgabe:

Wir können auch Mittelwert, Anzahl, Minimum oder Maximum berechnen, indem wir die Summe in der Zusammenfassungs- oder Aggregatfunktion ersetzen. Beispielsweise ermitteln wir die durchschnittlichen Umsätze und Gewinne für dasselbe Beispiel „group_by“ oben.

Beispiel:

R




library>(dplyr)> df =>read.csv>(>'Sample_Superstore.csv'>)> df_grp_reg_cat = df %>%>group_by>(Region, Category) %>%> >summarise>(mean_Sales =>mean>(Sales),> >mean_Profit =>mean>(Profit),> >.groups =>'drop'>)> View>(df_grp_reg_cat)>

>

Linkedlist und Arraylist
>

Ausgabe: