group_by()和any()连用判断每个分组中的元素是否满足特定条件

如果我们想要判断每个分组中是否存在元素>0,可以使用group_by()先对数据进行分组,然后使用filter函数结合any函数来判断每个分组是否满足特定条件并进行过滤。

当需要处理一个包含分组信息的数据框时:

#创建示例数据
df <- data.frame(
  group = c("A", "A", "B", "B","C","C"),
  value = c(1, 0, 1, 1, 0, 0)
)

如果我们想要判断每个分组中是否存在元素>0,可以使用group_by()先对数据进行分组,然后使用filter函数结合any函数来判断每个分组是否满足特定条件并进行过滤。

#加载包
library(dplyr)
# 使用group_by和any函数来判断每个group是否有value>0
df_result <- df %>%
  group_by(group) %>%
  filter(any(value > 0))

这样就仅保留了符合条件的分组:

attachments-2024-08-WMSDe1XQ66b2dfb589f92.png

  • 发表于 2024-08-07 10:46
  • 阅读 ( 485 )
  • 分类:R

0 条评论

请先 登录 后评论
每天学习一点点
每天学习一点点

49 篇文章

作家榜 »

  1. omicsgene 698 文章
  2. 安生水 347 文章
  3. Daitoue 167 文章
  4. 生物女学霸 120 文章
  5. xun 82 文章
  6. 红橙子 78 文章
  7. rzx 74 文章
  8. CORNERSTONE 72 文章