簡體   English   中英

R中的聚合函數

[英]Aggregate function in R

我是 R 的新手,因此很難弄清楚如何使用聚合函數從數據框中檢索字段/列的完整列表。

例如,我有一個包含 200 多個字段的數據框 df。 現在,我想對特定字段 df.a 上的數據框進行分組,然后按另一個字段 df.b 排序。 但是,在輸出數據框中,我希望每一行都包含所有 200 多個字段,而不僅僅是 df.a 和 df.b 字段。

請幫助我了解如何實現這一目標。

您可以編寫自己的函數,但最好使用已經編寫、調試和性能調優的函數。 dplyr非常適合這類事情。

我發現自己經常寫如下幾行:

df %>% group_by(a) %>% arrange(b) %>% summarise(total = sum(b))

其中df是我的數據框, group_by是按特定列(或列集)對行進行分組的函數,而arrange是按列(或列集)對行重新排序的函數。 summarise是一種執行聚合和生成數據匯總的方法。 %>%是“管道”運算符,用於將左側表達式的結果作為第一個參數提供給右側函數,而不是編寫多個難以讀取的嵌套調用或創建中間一次性變量。

希望這對您有所幫助或給您一些更好的想法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM