【问题标题】:Sparklyr using case_when with variablesSparklyr 使用 case_when 和变量
【发布时间】:2018-03-22 11:46:03
【问题描述】:

case_when 与外部变量一起使用时,Sparklyr 失败。

工作示例:

test <- copy_to(sc, tibble(column = c(1,2,3,4)))
test %>%
  mutate(group = case_when(
                   column %in% c(1,2) ~ 'group 1',
                   column %in% c(3,4) ~ 'group 2'))

Error: Can't extract an environment from NULL 失败

test <- copy_to(sc, tibble(column = c(1,2,3,4)))
group1_cols <- c(1,2)
group2_cols <- c(3,4)
test %>%
  mutate(group = case_when(
                   column %in% group1_cols ~ 'group 1',
                   column %in% group2_cols ~ 'group 2'))

【问题讨论】:

    标签: r dplyr sparklyr dbplyr


    【解决方案1】:

    尝试取消引用变量:

    test %>%
      mutate(group = case_when(
        column %in% !!group1_cols ~ 'group 1',
        column %in% !!group2_cols ~ 'group 2'))
    

    有关更多信息,请查看dplyr 编程小插图http://dplyr.tidyverse.org/articles/programming.html

    【讨论】:

      猜你喜欢
      • 2019-11-02
      • 2019-01-08
      • 2018-05-27
      • 2023-02-04
      • 1970-01-01
      • 2021-07-25
      • 2020-06-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多