答案 0 :(得分:0)
使用:
grep('0',resultado2$TextGridLabel)
查找带有0的行。如果要查看搜索参数子集化的整个数据集,只需使用括号:
resultado2[grep('0',resultado2$TextGridLabel),]
答案 1 :(得分:0)
您应该阅读?regex返回的帮助。它将为您提供在R中使用正则表达式的摘要。它还将向您介绍可以使用正则表达式的各种函数。
例如,如果您上面的数据位于数据框中,则为df:
grep(x=df$TextGridLabel, pattern="^.*0.+$")
将返回以any开头的所有值的索引,包含0且在0之后至少有一个字符。
干杯!
答案 2 :(得分:0)
如果filename
不属于匹配项,可以使用filename
列来避免匹配正则表达式:
library(dplyr)
library(purrr)
df %>%
mutate(no_filename = map2_chr(filename, text, ~gsub(.x, '', .y))) %>%
filter(grepl("^0", no_filename)) %>%
select(-no_filename)
<强>结果:强>
filename text value
1 S2 S20XXXXX 0.2065314
2 S3 S30XXXXX 0.8146400
3 S4 S40XXXXX 0.8123895
4 S6 S60XXXXX 0.1111354
5 S7 S70XXXXX 0.1028646
6 S9 S90XXXXX 0.1306957
7 S9 S90XXXXX 0.3203732
8 S10 S100XXXXX 0.1876911
注意:强>
请注意,S100XXXXX
是匹配的,而不是S101XXXXX
数据:强>
library(dplyr)
df = data.frame(filename = rep(paste0('S', 1:10), each = 5))
set.seed(123)
df = df %>%
mutate(text = paste0(filename, sample(c(0:5), 50, replace = TRUE),
paste(rep('X', 5), collapse = "")),
value = runif(50))
答案 3 :(得分:0)
下面的代码确实有效,基本上就是我需要的。
resultado2[grep('0',resultado2$TextGridLabel),]
但是,我想避免在S10XXXXXXX
中使用TextGridLabel
等数据。我刚刚编辑了原帖,以便新图片更好地展示了我想要考虑的内容。