gpt4 book ai didi

r - 使用 dplyr 连接组内的所有行

转载 作者:行者123 更新时间:2023-12-01 07:35:30 25 4
gpt4 key购买 nike

假设我有一个这样的数据框:

hand_id card_id card_name card_class
A 1 p alpha
A 2 q beta
A 3 r theta
B 2 q beta
B 3 r theta
B 4 s gamma
C 1 p alpha
C 2 q beta

我想将 card_id、card_name 和 card_class 连接到每手级别 A、B、C 的单行中。因此结果将如下所示:
hand_id  combo_1  combo_2  combo_3
A 1-2-3 p-q-r alpha-beta-theta
B 2-3-4 q-r-s beta-theta-gamma
....

我试图使用 group_by 和 mutate 来做到这一点,但我似乎无法让它工作
    data <- read_csv('data.csv')
byHand <- group_by(data, hand_id) %>%
mutate(combo_1 = paste(card_id),
combo_2 = paste(card_name),
combo_3 = paste(card_class))

感谢您的帮助。

最佳答案

你有点接近!

library(tidyr)
library(dplyr)

data <- read_csv('data.csv')
byHand <- group_by(data, hand_id) %>%
summarise(combo_1 = paste(card_id, collapse = "-"),
combo_2 = paste(card_name, collapse = "-"),
combo_3 = paste(card_class, collapse = "-"))

或使用 summarise_each :
 byHand <- group_by(data, hand_id) %>%
summarise_each(funs(paste(., collapse = "-")))

关于r - 使用 dplyr 连接组内的所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40033625/

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