gpt4 book ai didi

r - 计算多列并在 R 中分组

转载 作者:行者123 更新时间:2023-12-05 09:18:26 27 4
gpt4 key购买 nike

我上一个问题的答案帮助我理解了 dplyr n() 。但是我仍然无法应用于我要解决的问题。所以,我在这里发布数据和实际问题。数据看起来如下

  finalCalledPartyNumber Call Day           Call Date             Block Answered Call Duration Opty ID Opty Created Date BC ID
19183598259 Monday 2016-12-05 12:26:46 Block 2(12:30 pm) 1 5 1234 <NA> <NA>
17135796188 Monday 2016-12-05 12:18:24 Block 2(12:30 pm) 1 16 <NA> <NA> 3456
19183598259 Monday 2016-12-05 15:43:33 Block 4(5:30 pm) 1 10 <NA> <NA> 4567
17135796188 Tuesday 2016-12-06 11:53:50 Block 2(12:30 pm) 1 85 <NA> <NA> 5566
19014741000 Tuesday 2016-12-06 12:00:11 Block 2(12:30 pm) 1 42 6789 <NA> <NA>
19014741000 Tuesday 2016-12-06 10:43:20 Block 2(12:30 pm) 1 58 2345 <NA> <NA>
BC Created Date
<NA>
<NA>
<NA>
<NA>
<NA>
<NA>

对于每个 finalCalledPartyNumber ,我想计算每个 finallCalledPartyNumber 被调用的次数, Opty IDBC ID 的数量。数据集很大,<NA> 只是意味着没有创建 Opty IDBC ID

输出:

finalCalledPartyNumber    n_opty    n_BC    n_calls
19183598259 1 1 2
17135796188 0 2 2
19014741000 2 0 2

感谢您的帮助。谢谢。

最佳答案

这是使用 dplyr 实现您正在寻找的结果的另一种方法,但它不使用 n()

 df %>%  group_by(finalCalledPartyNumber) %>% 
summarise(n_opty = sum(!is.na(Opty.Id)),
n_BC = sum(!is.na(BC.ID)),
n_calls = sum(!is.na(Call)))

输出:

 # A tibble: 3 x 4
finalCalledPartyNumber n_opty n_BC n_calls
<dbl> <int> <int> <int>
1 17135796188 0 2 2
2 19014741000 2 0 2
3 19183598259 1 1 2

关于r - 计算多列并在 R 中分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44508582/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com