【问题标题】:R convert date column into gregorian calendar [duplicate]R将日期列转换为公历[重复]
【发布时间】:2015-08-08 00:43:08
【问题描述】:

我想将数据框的一列转换为公历日期。 例如以下数据框:

       Date_R Tmax
1  1985-01-01  9.0
2  1985-02-02  9.0
3  1985-12-31 11.0
4  1986-01-04  8.5
5  1986-01-05 11.0

进入:

  Date_R Tmax
1      1  9.0
2     33  9.0
3    365 11.0
4      4  8.5
5      5 11.0

或添加包含此信息的新列。

提前致谢

【问题讨论】:

标签: r gregorian-calendar


【解决方案1】:

将 'Date_R' 列转换为 'Date' 类(如果不是),并使用 format 选项 %j 获取一年中的哪一天。

 df1$Date_R <- as.numeric(format(as.Date(df1$Date_R), '%j'))
 df1
 #  Date_R Tmax
 #1      1  9.0
 #2     33  9.0
 #3    365 11.0
 #4      4  8.5
 #5      5 11.0

【讨论】:

    【解决方案2】:

    或者你可以使用as.POSIXlt

    as.POSIXlt(df$Date_R)$yday + 1L
    ## [1]   1  33 365   4   5
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-22
      • 1970-01-01
      • 1970-01-01
      • 2013-07-21
      • 2019-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多