r - mutate_impl(.data, 点) : Evaluation error: non-numeric argument to binary operator 中的错误

标签 r dplyr

当我尝试运行以下函数时:

foo <- air_reserve %>%
  mutate(reserve_date = date(reserve_datetime),
         reserve_hour = hour(reserve_datetime),
         reserve_wday = wday(reserve_datetime, label = TRUE),
         visit_date = date(visit_datetime),
         visit_hour = hour(visit_datetime),
         visit_wday = wday(visit_datetime, label = TRUE),
         diff_hour = time_length(visit_datetime - reserve_datetime, unit = "hour"),
         diff_day = time_length(visit_datetime - reserve_datetime, unit = "day")
  )

我收到以下错误:

Error in mutate_impl(.data, dots) : 
  Evaluation error: non-numeric argument to binary operator.

如何解决这个问题?

注意:

foo函数取自此 link

最佳答案

哇!!

我通过以下代码解决了这个问题:

foo <- air_reserve %>%
  mutate(reserve_date = date(reserve_datetime),
         reserve_hour = hour(reserve_datetime),
         reserve_wday = wday(reserve_datetime, label = TRUE),
         visit_date = date(visit_datetime),
         visit_hour = hour(visit_datetime),
         visit_wday = wday(visit_datetime, label = TRUE), 
         diff_hour = time_length(as.numeric(visit_datetime) - as.numeric(reserve_datetime), unit = "hour"),
         diff_day = time_length(as.numeric(visit_datetime) - as.numeric(reserve_datetime), unit = "day")

  )

关于r - mutate_impl(.data, 点) : Evaluation error: non-numeric argument to binary operator 中的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47574204/

相关文章:

r - 将多个列突变为一个函数,为 dplyr 中结果列内的每个组件创建一个列表

r - 制作新的绘图窗口时是否可以在屏幕上指定位置?

r - 无法在循环中绘制多个图?

rvest 表抓取,包括链接

r - top_n() 没有选择 n

r - 如何找到满足条件的组的第一个元素

r - 将 OS National Grid 名称/代码添加到 R 中的网格

r - 结合过滤器、跨和 starts_with 以跨 R 中的列进行字符串搜索

r - 按值选择多个观察值

r - 如何向仅修改某些列的数据框添加一行