【问题标题】:R aggregate list of dataframeR数据框的聚合列表
【发布时间】:2016-11-12 21:06:02
【问题描述】:

我确实有 53 个数据框的列表(purchase01 到 purchase53),按日期排序,有 18 个变量和不同的行数(尝试过,但无法在下面粘贴示例)。我想聚合每个不同的数据帧,通过“V9”的重复值 - 因子 - 将列“V2” - 数字相加。我还没找到答案。

我只能使用一个数据框 aggregate.data.frame(purchase00$V12, by = list(purchase00($V9),FUN = sum) 工作正常。

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

但没有成功,该函数似乎没有收到每个数据帧的 by 也没有函数 sum。此外,mapply 对我来说效果不佳。

【问题讨论】:

    标签: r list dataframe sum aggregate-functions


    【解决方案1】:
    ## 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 ,你可以使用 base :

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

    【讨论】:

    • dplyr 给了我一个 sumaraized 数据,以防我需要输出而不对其进行 sommirize。 lapply 工作正常。谢谢
    猜你喜欢
    • 1970-01-01
    • 2016-05-18
    • 2021-11-14
    • 1970-01-01
    • 2016-01-13
    • 1970-01-01
    • 2016-03-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多