gpt4 book ai didi

r - 如何计算特定值的数量

转载 作者:行者123 更新时间:2023-12-04 10:54:09 26 4
gpt4 key购买 nike

我的数据是这样的:

ID CO MV  
1 0 1
1 5 0
1 0 1
1 9 0
1 8 0
1 0 1
2 69 0
2 0 1
2 8 0
2 0 1
2 78 0
2 53 0
2 0 1
2 3 0
3 54 0
3 0 1
3 8 0
3 90 0
3 0 1
3 56 0
4 0 1
4 56 0
4 0 1
4 45 0
4 0 1
4 34 0
4 31 0
4 0 1
4 45 0
5 0 1
5 0 1
5 67 0

我希望它看起来像这样:

ID CO MV  CONUM
1 0 1 3
1 5 0 3
1 0 1 3
1 9 0 3
1 8 0 3
1 0 1 3
2 69 0 5
2 0 1 5
2 8 0 5
2 0 1 5
2 78 0 5
2 53 0 5
2 0 1 5
2 3 0 5
3 54 0 4
3 0 1 4
3 8 0 4
3 90 0 4
3 0 1 4
3 56 0 4
4 0 1 5
4 56 0 5
4 0 1 5
4 45 0 5
4 0 1 5
4 34 0 5
4 31 0 5
4 0 1 5
4 45 0 5
5 0 1 1
5 0 1 1
5 67 0 1

我想创建一个 CONUM 列,它是 ID 列中每个值的 CO 列中非零值的总数。因此,例如 ID 1 的 CO 列有 3 个非零值,因此 CONUM 列中的对应值为 3。如果 CO 列有值,则 MV 列为 0,如果 CO 列为 0,则 MV 列为 1。所以另一种方法可以完成创建 CONUM 列将计算每个 ID 的零数。如果您能帮助我使用 r 代码来完成此操作,那就太好了。谢谢。

最佳答案

这是一个带有data.table的选项

library(data.table)
setDT(df)[,CONUM:=sum(CO!=0) ,ID][]

关于r - 如何计算特定值的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27874453/

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