1

前のグループ化に基づいて条件付きで合計しようとしています。それを思いつくのに苦労しています。

fでグループ化した後、タイプr1にあるものに基づいてamt列を合計しようとしています。

再現可能なコード:

s <- sample(c('one', 'two'), 96, replace = TRUE)
f <- sample(c('a','s','d','f'), 96, replace = TRUE)
r1_amt <- runif(96, 1, 100)
r2_amt <- runif(96, 1, 100)
r3_amt <- runif(96, 1, 100)
x <- data_frame(s, f, r1_amt, r2_amt, r3_amt)


smy <- x %>%
  group_by(f) %>%
  summarise(n = n(), # population in each f group
            num_r1 = sum(r1_amt >= 50)) # amount of r1 in each f group

.[r1_amt >= 50]$amtcumsum(r1_amt >= 50)を試しましsum(ifelse(r1_amt >= 50, r1_amt, 0))たが、グループ化された数字を思いつくことができませんでした。

したがって、1 つの行が r1 の場合は 60、r2 の場合は 40、r3 の場合は 55 である可能性があり、それが理にかなっている場合は、r1 と r3 のみの合計金額の列に含める必要があります。

4

2 に答える 2