You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R语言DataFrame中保留包含deviant的分组?

筛选包含指定值的分组数据

首先注意你的数据集里存在列名笔误:.Names = c("group_id", "soudn")应该修正为.Names = c("group_id", "sound"),否则后续操作会因为列名不匹配报错。

方法一:使用dplyr(tidyverse工具链)

先修正列名,再通过分组筛选保留包含deviant的组:

library(dplyr)

# 修正列名错误
df <- rename(df, sound = soudn)

# 筛选保留包含"deviant"的分组
filtered_df <- df %>%
  group_by(group_id) %>%
  filter(any(trimws(sound) == "deviant")) %>% # trimws处理字符串前后空格
  ungroup()

方法二:使用Base R

无需额外加载包,用基础R函数实现:

# 修正列名错误
names(df)[names(df) == "soudn"] <- "sound"

# 获取所有包含"deviant"的分组ID
valid_groups <- unique(df$group_id[trimws(df$sound) == "deviant"])

# 筛选数据
filtered_df <- df[df$group_id %in% valid_groups, ]

两种方法最终都会得到保留组1和组3的数据集,移除无deviant的组2。

内容的提问来源于stack exchange,提问作者S2068

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 05:25:44