У меня есть следующий фрейм данных:
> LikelyRenew_ReasonB %>%
+ mutate(cum_Sum = ave(freq,Name,FUN = cumsum))
Name x freq cum_Sum
1 costC 1 10 10
2 costC 2 11 21
3 costC 3 17 38
4 costC 4 149 187
5 productsC 1 31 31
6 productsC 2 40 71
7 productsC 3 30 101
8 productsC 4 86 187
9 communC 1 51 51
10 communC 2 50 101
11 communC 3 34 135
12 communC 4 52 187
13 reimburseC 1 42 42
14 reimburseC 2 26 68
15 reimburseC 3 25 93
16 reimburseC 4 94 187
17 policyC 1 31 31
18 policyC 2 25 56
19 policyC 3 28 84
20 policyC 4 103 187
21 discountC 1 2 2
22 discountC 2 2 4
23 discountC 3 3 7
24 discountC 4 180 187
Вот как выглядит переменная:
> dput(head(LikelyRenew_ReasonB))
structure(list(Name = c("costC", "costC", "costC", "costC", "productsC",
"productsC"), x = c(1, 2, 3, 4, 1, 2), freq = c(10L, 11L, 17L,
149L, 31L, 40L)), .Names = c("Name", "x", "freq"), row.names = c(NA,
6L), class = "data.frame")
Я пытаюсь получить для каждой группы относительную частоту для каждогооценка частоты, а затем сумма относительных частот для группы.Ниже я привожу образец того, что я ищу - первые три строки - их freq / cum_Sum [x == 4].Последний ряд должен быть в сумме из этих 3 строк.
Возможно ли это?Я полностью в тупике.
Name x freq cum_Sum IdealOutput *how i calculated IdealOutput
1 costC 1 10 10 5.35 (10/187)
2 costC 2 11 21 5.88 (11/187)
3 costC 3 17 38 9.09 (17/187)
4 costC 4 149 187 20.32 (sum of above 3 values)