[ https://issues.apache.org/jira/browse/ARROW-13262?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17375989#comment-17375989 ]
Ian Cook commented on ARROW-13262: ---------------------------------- This same problem occurs in dbplyr in and other non-data.frame dplyr interface packages. For example, functions from the stringr and lubridate packages don't work with dbplyr if you include {{stringr::}} or {{lubridate::}} before their names. I think it's fine to close this as "won't fix" at least for now. It's a general limitation affecting dplyr when used on objects that are not R data frames. Alternatively, we could try to fix this, like I do in tidyquery: When the data object is something besides an R data frame, tidyquery calls this {{unscope_expression}} function to remove the {{package::}} prefix by manipulating the AST: [https://github.com/ianmcook/tidyquery/blob/master/R/unscope.R] My 2 cents: I don't think this is worth the effort right now. > [R] Support namespacing of function maps? > ----------------------------------------- > > Key: ARROW-13262 > URL: https://issues.apache.org/jira/browse/ARROW-13262 > Project: Apache Arrow > Issue Type: Improvement > Components: R > Reporter: Jonathan Keane > Priority: Major > > With our NSE function map setup, we translate various functions into Arrow > equivalents: > {code} > library(arrow) > library(dplyr) > arrow_table <- Table$create(tibble::tibble( > v = c("A", "B", "C"), > w = c("a", "b", "c"), > x = c("d", NA_character_, "f"), > y = c(NA_character_, "h", "i"), > z = c(1.1, 2.2, NA) > )) > arrow_table %>% > transmute(str_c(x, y, sep = " ")) %>% > collect() > #> # A tibble: 3 x 1 > #> `str_c(x, y, sep = " ")` > #> <chr> > #> 1 <NA> > #> 2 <NA> > #> 3 f i > {code} > Which is great, however if the code that is being used uses the `sringr::` > namespace prefix this errors: > {code} > arrow_table %>% > transmute(stringr::str_c(x, y, sep = " ")) %>% > collect() > #> Warning: Expression stringr::str_c(x, y, sep = " ") not supported in Arrow; > #> pulling data into R > #> Error: Problem with `mutate()` input `..1`. > #> ℹ `..1 = ..1`. > #> x object 'x' not found > {code} > Should we support this (basically *also* translate {{stringr::str_c()}} to > what we have for {{str_c()}})? Or warn/error more clearly what happened if we > don't support any namespace prefixed functions? Something else? -- This message was sent by Atlassian Jira (v8.3.4#803005)