R - 子集 - 基于列值的 grepl 选择排除行 [重复]

Posted

技术标签:

【中文标题】R - 子集 - 基于列值的 grepl 选择排除行 [重复]【英文标题】:R - subset - exclude rows based on grepl selection of column value [duplicate] 【发布时间】:2021-04-28 02:31:31 【问题描述】:

我成功地选择了我不想要的项目。

df3 <- subset(df2, grepl("^Imag.*", appt_type))

我要做的是创建与先前命令相反的命令。我想创建一个新数据集(df3),它包含来自df2 的所有行,除非appt_type 值以"Imag" 开头。我尝试了 [ ] 和 ! 的许多组合。在不同的地方,但似乎无法做到这一点。一直在梳理留言板,知道我错过了一些简单的东西。

非常感谢任何帮助。

【问题讨论】:

你试过df3 &lt;- subset(df2, !grepl("^Imag.*", appt_type))吗? 如果你想要的只是以"Imag"开头的字符串(不是),你也可以删除.* @stefan,做到了!谢谢 @Rui Barradas 您的建议对结果没有任何影响,感谢您抽出宝贵时间! 【参考方案1】:
df3 <- subset(df2, !grepl("^Imag.*", appt_type))

基本上找到所有以 Imag 开头的 NOT (!)。

【讨论】:

以上是关于R - 子集 - 基于列值的 grepl 选择排除行 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

一列中相同值的R子集行取决于另一列中的多个值

通过应用 RFE 选择给出最佳调整 R 平方值的特征子集

基于列值有条件地选择行

Python - 基于列值(或子集)的分组(或循环)

按列值对 R 数据框进行子集,并将与特定值匹配的单元格更改为新值

从子集中选择观察值以基于 R 中的大型数据框创建新子集