gpt4 book ai didi

r - 在 R 中折叠列

转载 作者:行者123 更新时间:2023-12-04 10:58:38 25 4
gpt4 key购买 nike

我已尽我所能进行搜索,我的部分问题是我真的不确定要问什么。这是我的数据,以及我希望它如何结束:

现在:

john    a Yes
john b No
john c No
Rebekah a Yes
Rebekah d No
Chase c Yes
Chase d No
Chase e No
Chase f No

我希望它是怎样的:

john     a,b,c    Yes
Rebekah a,d Yes
Chase c,d,e,f Yes

请注意,当第 3 列是第 1 列中具有特定值的第一行时,第 3 列表示"is"。第三行不是必需的,我只是在使用它,认为我会尝试使用 iffor 语句来完成这一切,但我认为会这样效率低下。有什么方法可以有效地完成这项工作吗?

最佳答案

另一种选择是(使用@bgoldst 提到的数据)

library('dplyr')

out = df %>%
group_by(a) %>%
summarize(b = paste(unique(c(b)), collapse=","), c = "yes")

#> out
#Source: local data frame [3 x 3]

# a b c
#1 Chase c,d,e,f yes
#2 Rebekah a,d yes
#3 john a,b,c yes

使用 data.table

out = setDT(df)[, .(b = paste(unique(b),  collapse=','), c = "yes"), by = .(a)]

#> out
# a b c
#1: john a,b,c yes
#2: Rebekah a,d yes
#3: Chase c,d,e,f yes

关于r - 在 R 中折叠列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30677037/

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