我正在尝试进行一些日期计算,如下所示:
library(optionstrat) #compute the difference between two dates tdiff("2022-10-20", "2022-11-30", "days") # return with an integer of 41, which is good. tdiff(Sys.Date()-1, "2022-11-30", "days") # return with ***41.66***
我想知道我在第三行做错了什么,我可以问我如何将其作为整数吗?非常感谢。
如果您将日期作为character
标量提供,它似乎可以工作
library(opionstrat)
tdiff(format(Sys.Date() - 1, "%Y-%m-%d"), "2022-11-30", "days")
遗憾的是,optionstrat::tdiff
的文档不是很详细。似乎tdiff
只是在幕后调用difftime
。difftime
又需要两个时间点,要么作为POSIXct
/Date
对象,要么作为对POSIXct
/Date
对象可强制的东西。以不同的格式(一个作为Date
对象,一个作为character
标量(提供time1
和time2
似乎工作不好。
(切向(PS。我并没有真正看到optionstrat::tdiff
的意义,因为它实际上只是两个时间点交换的difftime
。