Funkcia Group_by() patrí do balíka dplyr v programovacom jazyku R, ktorý zoskupuje dátové rámce. Samotná funkcia Group_by() neposkytuje žiadny výstup. Po ňom by mala nasledovať funkcia summarise() s príslušnou akciou, ktorú treba vykonať. Funguje podobne ako GROUP BY v SQL a kontingenčná tabuľka v Exceli.
Syntax:
group_by(stĺpec,…)
Syntax:
group_by(col,..) %>% summarise(akcia)
Používaný súbor údajov:
Sample_Superstore
Group_by() zapnuté a jeden stĺpec
Toto je najjednoduchší spôsob, ako možno stĺpec zoskupiť, stačí zadať názov stĺpca, ktorý sa má zoskupiť, do funkcie group_by() a akciu, ktorá sa má vykonať s týmto zoskupeným stĺpcom, vo funkcii summarise().
Príklad: Zoskupenie jedného stĺpca podľa group_by()
algoritmus mergesort
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)> |
>
>
Výkon:
Group_by() vo viacerých stĺpcoch
Funkciu Group_by() je možné vykonať aj na dvoch alebo viacerých stĺpcoch, názvy stĺpcov musia byť v správnom poradí. Zoskupenie sa uskutoční podľa názvu prvého stĺpca vo funkcii group_by a potom sa uskutoční zoskupenie podľa druhého stĺpca.
Príklad: Zoskupenie viacerých stĺpcov
R
IMPS hry pre android
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)> |
>
>
Výkon:
Môžeme tiež vypočítať priemer, počet, minimum alebo maximum nahradením súčtu v sumárnej alebo agregačnej funkcii. Napríklad nájdeme priemerné tržby a zisky pre rovnakú skupinu podľa príkladu vyššie.
Príklad:
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)> |
>
>
Výkon: