gpt4 book ai didi

r - R 中管道操作中不包含单词的子向量(正则表达式)

转载 作者:行者123 更新时间:2023-12-02 04:22:48 24 4
gpt4 key购买 nike

如何对管道操作中不包含单词的元素进行向量子集化? (我真的很喜欢管道)

我希望有某种方法可以反转str_subset。在下面的示例中,我只想返回 x 的第二个元素,而不是其中包含 hi 的元素:

library(stringr)
x <- c("hi", "bye", "hip")
x %>%
str_dup(2) %>% # just an example operation
str_subset("hi") # I want to return the inverse of this

最佳答案

您可以使用^(?!.*hi)断言字符串不包含hi;正则表达式使用否定前瞻 ?! 并断言字符串不包含模式 .*hi:

x %>% 
str_dup(2) %>% # just an example operation
str_subset("^(?!.*hi)")
# [1] "byebye"

或通过反转 str_detect 进行过滤:

x %>% 
str_dup(2) %>% # just an example operation
{.[!str_detect(., "hi")]}
# [1] "byebye"

关于r - R 中管道操作中不包含单词的子向量(正则表达式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49958518/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com