R中非公历的日期顺序

  • 本文关键字:日期 顺序 r date
  • 更新时间 :
  • 英文 :


我想获得一年中12个月-每个月30天的日期序列(因此没有公历(,我想知道seq.Dateseq.IDate(data.table(中是否有一些变通方法。非常感谢。

  • 我们可以试试这个
as.Date(paste0( "2022/",rep(1:12 , each = 30) ,"/", rep(1:30 , times = 12)))

您可以使用ISOdate()从数字表示中创建日期时间。

as.Date(ISOdate(2022, rep(1:12, each = 30), 1:30))

您可能正在使用一些符合CF元数据约定的数据集(例如大多数气候预测数据和许多其他环境数据集(。在支持的9个日历中,360_day将年表示为30天的12个月。这显然不符合POSIXt,因此您不能可靠地使用内置的日期函数,也不能使用像lubridate这样的包。然而,现在有一个包CFtime,它透明地支持所有9个CF日历。

您可以创建2022年的时间序列,如下所示:

ts <- CFtime("days since 2022-01-01", "360_day", 0:359)

或2020-12-20至2021-1-10期间:

ts <- CFtime("days since 2020-12-20", "360_day", 0:20)

作为字符串:

CFtimestamp(ts)

该包还可以创建具有日历意识的因素,以便进一步处理。

最新更新