2016-11-12 41 views
0

我确实有53个数据框(purchase01到purchase53)的列表,按日期排序,有18个变量和不同数量的行(tryed,但不能粘贴下面的示例)。我想聚合每个不同的数据帧通过其重复值“V9” - factor-通过总和列“V2” - 数字。我没有找到答案。R dataframe集合清单

对于只有一个数据帧我可以使用 aggregate.data.frame(purchase00$V12, by = list(purchase00($V9),FUN = sum) itjust正常工作。

我tryed llply, llply(.data = purchase, .fun = aggregate.data.frame, by= list(unique((V9),sum, .inform = TRUE)

但没有sucess,似乎功能不适用于所有的数据帧,也不是功能和接收的。此外,该mapply不适合我。

回答

2
## assuming your list is called list_of_df 
require(dplyr) 

summarized_list <- lapply(list_of_df, function(x) { 

x %>% group_by(V9) %>% summarize(sum(V2)) 

}) 

这将返回一个列表,其中包含购买列表中每个数据框的摘要。

如果你不想使用dplyr,你可以用基地做到这一点:

lapply(list_of_df, function(x) {aggregate(values ~ day_of_week, data = x, sum) }) 
+0

的dplyr gavte我sumaraized数据的情况下,我需要的输出,而不sommirize它。该lapply工作正常。 谢谢 –