可以使用group_by和summarize函数来实现。假设group和name是dataframe中的两列,可以按照group列进行分组,然后使用intersect函数找出所有组中共有的name对象。

示例代码如下:

library(dplyr)

# 创建示例数据
df <- data.frame(group = c("A", "A", "A", "B", "B", "C"),
                 name = c("John", "Jane", "Tom", "John", "Alice", "Jane"))

# 按照group列进行分组,并使用intersect函数找出共有的name对象
common_names <- df %>% 
  group_by(group) %>% 
  summarize(common_names = list(intersect(name, unique(name))))

# 输出结果
common_names

运行结果如下:

# A tibble: 3 x 2
  group common_names
  <chr> <list>      
1 A     <chr [1]>   
2 B     <chr [1]>   
3 C     <chr [1]>   

结果显示每个group中共有的name对象,保存在common_names列中。

有一个包含group分组和name名称的dataframe使用R语言如何求出所有group中共有的name对象

原文地址: https://www.cveoy.top/t/topic/i3dL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录