有一个包含group分组和name名称的dataframe使用R语言如何通过dataframe的group列来求出所有group中共有的name
你可以使用dplyr包中的group_by()和summarise()函数来实现这个目标。下面是一个示例代码:
library(dplyr)
# 创建一个包含group和name的dataframe
df <- data.frame(
group = c("A", "A", "B", "B", "C", "C"),
name = c("John", "Mary", "John", "Alice", "Alice", "Bob")
)
# 按照group列进行分组,并计算每个组中的共有name
result <- df %>%
group_by(group) %>%
summarise(common_names = toString(unique(name)))
# 打印结果
print(result)
运行以上代码,你会得到一个新的dataframe,其中包含每个group中共有的name。
# A tibble: 3 x 2
group common_names
<chr> <chr>
1 A John, Mary
2 B John, Alice
3 C Alice, Bob
在这个示例中,我们使用group_by()函数按照group列进行分组,然后使用summarise()函数计算每个组中的共有name。最后,我们将结果打印出来。
请注意,我们使用了toString()函数来将每个组的name连接成一个字符串,并使用unique()函数来去除重复的name。
原文地址: https://www.cveoy.top/t/topic/i3dJ 著作权归作者所有。请勿转载和采集!