gpt4 book ai didi

r - 计算 R 数据框列中变量值的唯一组合

转载 作者:行者123 更新时间:2023-12-03 13:59:49 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Collapse / concatenate / aggregate a column to a single comma separated string within each group

(5 个回答)



Count number of rows within each group

(16 个回答)


去年关闭。




我想计算每组出现的变量的唯一组合。
例如:

df <- data.frame(id = c(1,1,1,2,2,2,3,3,4,4,4,5,6,6,7,7,7),
status = c("a","b","c","a","b","c","b","c","b","c","d","b","b","c","b","c", "d"))

> df
id status
1 1 a
2 1 b
3 1 c
4 2 a
5 2 b
6 2 c
7 3 b
8 3 c
9 4 b
10 4 c
11 4 d
12 5 b
13 6 b
14 6 c
15 7 b
16 7 c
17 7 d
因此,例如,我可以计算给定的“状态”组合出现的次数。
例如,通过手工,我看到“a,b,c”总共出现了两次(id 的 1 和 2)。
这些似乎是类似的问题,但我无法弄清楚如何去做,并且在 R 中有更清晰的解释:
Counting unique combinations
Count of unique combinations despite order
我想我正在寻找的结果是这样的:
abc 2
bc 3
b 1
...

最佳答案

带有 tidyverse 的选项where group by 'id', paste '状态' 并获得 count

library(dplyr)
library(stringr)
df %>%
group_by(id) %>%
summarise(status = str_c(status, collapse="")) %>%
count(status)
# A tibble: 4 x 2
# status n
# <chr> <int>
#1 abc 2
#2 b 1
#3 bc 2
#4 bcd 2

关于r - 计算 R 数据框列中变量值的唯一组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63062416/

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