Skip to content

[R] Aggregation on expression doesn't NSE correctly #29158

@asfimport

Description

@asfimport
  expect_dplyr_equal(
    input %>%
      mutate(has_words = nchar(verses) < 0) %>%
      group_by(some_grouping) %>%
      summarize(all(has_words)) %>%
      arrange(some_grouping) %>%
      collect(),
    tbl
  )

works, but if you define the expression inline, it doesn't:

  expect_dplyr_equal(
    input %>%
      group_by(some_grouping) %>%
      summarize(has_words = all(nchar(verses) < 0)) %>%
      arrange(some_grouping) %>%
      collect(),
    tbl
  )

The error you get I think means that base::nchar is being called. I'm not sure if this is a general issue with our nse_funcs calling other nse_funcs, or if this is about the way the aggregation function environment is constructed separately, but it's not good.

Reporter: Neal Richardson / @nealrichardson
Assignee: Neal Richardson / @nealrichardson

Related issues:

PRs and other links:

Note: This issue was originally created as ARROW-13499. Please see the migration documentation for further details.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions