问题描述
我正在处理时间序列,需要将1988年1月1日转换为1988年12月31日。
我知道如何在Matlab中使用Datenum函数进行操作:
datenum_vect = datenum(year,1,1):datenum(year,12,31)
结果是:
第1至16列
726103 726104 726105 726106 726107
我尝试在R(https://www.rdocumentation.org/packages/solidearthtide/versions/1.0.2/topics/Datenum)中使用Datenum函数,但是该库不适用于R 4.0.2。的最新版本。
在R中如何获得与Matlab中的Datenum相同的值的任何想法?
解决方法
您可以使用ISOdate
赋予"POSIXct"
。
year <- 2020
ISOdate(year,1,0)
# [1] "2020-01-01 GMT"
要获取数字日期的Matlab值,请按照?as.Date
一章“从其他系统转换”,您需要将"POSIXct"
转换为"date"
,并添加一个常量。>
as.numeric(as.Date(ISOdate(1988,0))) + 719529
# [1] 726103
as.numeric(ISOdate(.))
给出秒;因此,我们还需要as.Date()
来获得日子。