La funzione Group_by() appartiene al pacchetto dplyr nel linguaggio di programmazione R, che raggruppa i frame di dati. La sola funzione Group_by() non fornirà alcun output. Dovrebbe essere seguito dalla funzione summarise() con un'azione appropriata da eseguire. Funziona in modo simile a GROUP BY in SQL e alla tabella pivot in Excel.
Sintassi:
group_by(col,…)
Sintassi:
group_by(col,..) %>% riepiloga(azione)
Il set di dati in uso:
Campione_Superstore
Group_by() attivo UN colonna singola
Questo è il modo più semplice con cui è possibile raggruppare una colonna, basta passare il nome della colonna da raggruppare nella funzione group_by() e l'azione da eseguire su questa colonna raggruppata nella funzione summarise().
Esempio: Raggruppamento di una singola colonna per group_by()
casuale c
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)> |
>
>
Produzione:
Group_by() su più colonne
La funzione Group_by() può essere eseguita anche su due o più colonne, i nomi delle colonne devono essere nell'ordine corretto. Il raggruppamento avverrà in base al nome della prima colonna nella funzione group_by e quindi il raggruppamento verrà eseguito in base alla seconda colonna.
Esempio: Raggruppamento di più colonne
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)> |
>
>
Produzione:
Possiamo anche calcolare la media, il conteggio, il minimo o il massimo sostituendo la somma nella funzione di riepilogo o aggregazione. Ad esempio, troveremo le vendite e i profitti medi per lo stesso gruppo_secondo l'esempio sopra.
Esempio:
R
converti la stringa in char java
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)> |
>
>
Produzione: