【问题标题】:Sumarize values by group and conditioned to other two columns按组汇总值并以其他两列为条件
【发布时间】:2021-11-11 17:53:31
【问题描述】:

在这个数据中,我想创建一个新的数据框,其中包含循环(这是我的标识符)列,另外两列是我的 N 变量的总和,另一列是 N 的总和,其中分类器的元素列等于有效列。

set.seed(1)
test <- tibble(cicle = c(rep("1", 10), rep("2", 10), rep("3", 10)),
           classifier = rep(c("c1", "c2", "c3"), 10),
           valid = rep(c("c3", "c2", "c4"), 10),
           N = rnorm(30))

我该怎么做?

谢谢

【问题讨论】:

    标签: r dataframe dplyr


    【解决方案1】:

    按“cicle”分组后,获取第一个sum的“N”的sum和“N”子集的sum,即classifier的值与valid相同

    library(dplyr)
    test %>% 
        group_by(cicle) %>%
        summarise(sum1 = sum(N), sum2 = sum(N[classifier == valid]), .groups = 'drop')
    

    【讨论】:

    • 谢谢我忘记了 .groups 参数。
    猜你喜欢
    • 1970-01-01
    • 2017-08-20
    • 1970-01-01
    • 2023-02-23
    • 2016-12-29
    • 2022-01-06
    • 1970-01-01
    • 1970-01-01
    • 2016-11-15
    相关资源
    最近更新 更多