gpt4 book ai didi

r - 如何按包含 dbplyr 中的变量的字符串进行过滤

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

这个问题在这里已经有了答案:





Pass SQL functions in dplyr filter function on database

(2 个回答)


26 天前关闭。




我通常使用 filtergrepl在 dplyr 中,但在使用 dbplyr 时.我收到一个错误,即 grepl 不是可识别的函数。我的猜测是它无法转换为 SQL 服务器。用 dbplyr 解决这个问题的方法是什么?

这是一个可重现的例子

library(dbplyr)
library(nycflights13)

## Working chunk
con <-DBI::dbConnect(RSQLite::SQLite(), ":memory:")
DBI::dbWriteTable(con, "flights", flights)
DBI::dbGetQuery(con, "SELECT origin, flight
FROM flights WHERE origin like '%jf%'")
## End working chunk

## The below code does not work
flights <- tbl(con,"flights")
flights %>%
select(origin, flight) %>%
filter(grepl('jf', origin))

最佳答案

我从 this answer 找到了解决方案有效的。

这是适用于您的案例的代码:

dplyr::tbl(con, "flights") %>% 
filter(origin %like% '%jf%') %>%
collect()

关于r - 如何按包含 dbplyr 中的变量的字符串进行过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46096942/

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