gpt4 book ai didi

r - dplyr filter()与类似SQL的%wildcard%

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

假设我有以下数据:

foo <- data.frame(Company = c("company1", "foo", "test", "food"), Metric = rnorm(4, 10))

> foo
Company Metric
1 company1 10.539970
2 foo 9.487823
3 test 9.663994
4 food 9.499327


为什么以下代码返回0结果(而不是第二和第四行)?

library(dplyr)
library(data.table)

foo %>% dplyr::filter(Company %like% "%foo%")


我正在尝试使用 dplyr::filter包中的 %like%运算符,对 data.table的特定输入字符串使用与SQL等效的通配符过滤器。

我究竟做错了什么?

最佳答案

您可以使用library(stringr)

library(dplyr)
library(stringr)
foo <- data.frame(Company = c("company1", "foo", "test", "food"), Metric = rnorm(4, 10))

foo %>% filter(str_detect(Company,"foo"))


以及任何其他正则表达式

foo %>% filter(str_detect(Company,"^f")) 

关于r - dplyr filter()与类似SQL的%wildcard%,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32829358/

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