gpt4 book ai didi

r - 按组将唯一/不同值的计数添加到原始数据

转载 作者:行者123 更新时间:2023-12-02 04:35:43 26 4
gpt4 key购买 nike

我希望通过对第二个变量进行分组来计算唯一值的数量,然后将计数作为新列添加到现有的 data.frame 中。例如,如果现有数据框如下所示:

  color  type
1 black chair
2 black chair
3 black sofa
4 green sofa
5 green sofa
6 red sofa
7 red plate
8 blue sofa
9 blue plate
10 blue chair

我想为每种颜色添加数据中存在的唯一类型的计数:

  color  type unique_types
1 black chair 2
2 black chair 2
3 black sofa 2
4 green sofa 1
5 green sofa 1
6 red sofa 2
7 red plate 2
8 blue sofa 3
9 blue plate 3
10 blue chair 3

我希望使用ave,但似乎找不到不需要很多行的简单方法。我有 >100,000 行,所以我也不确定效率有多重要。

与此问题有些相似:Count number of observations/rows per group and add result to data frame

最佳答案

这是一个带有 dplyr 的解决方案包 - 它有 n_distinct() 作为 length(unique()) 的包装器。

df %>%
group_by(color) %>%
mutate(unique_types = n_distinct(type))

关于r - 按组将唯一/不同值的计数添加到原始数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17421776/

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