R中未使用的参数日期

时间:2018-01-08 15:47:11

标签: r date lubridate

当我尝试从日期对象中提取年份时,我收到一个奇怪的错误

这是我约会的时间:

structure(list(date = structure(c(15706, 15707, 15708, 15709, 
15710, 15711), class = "Date")), .Names = "date", row.names = c(NA, 
-6L), class = c("tbl_df", "tbl", "data.frame"))

当我输入lubridate::year(date)时,我收到以下错误。

Error in year(., date) : unused argument (date)

3 个答案:

答案 0 :(得分:2)

将对象命名为data之后,我假设这就是您所做的:

data %>%
    year(date)

这对我也没有用。你可以试试这个:

year(data$date)

答案 1 :(得分:2)

pipe中,如果您这样做,由于订单或评估

,它将无效
 dates %>%
     lubridate::year(date)
  

lubridate :: year(。,date)出错:未使用的参数(日期)

我们需要pull列,然后应用函数

dates %>%
   pull(date) %>%
   lubridate::year(.)

或者另一种方法是使用{}

中的功能
dates %>% 
   {lubridate::year(.$date)}
#[1] 2013 2013 2013 2013 2013 2013

或使用mutate

创建列的标准方式
dates %>% 
    mutate(year = lubridate::year(date))

答案 2 :(得分:1)

或者,您可以使用magrittr运算符%$%

library(magrittr)
dates %$%
  year(date)