R语言 使用timeDate库从当前日期提取上个月

enyaitl3  于 2022-12-20  发布在  其他
关注(0)|答案(1)|浏览(248)

我使用timeDate库而不是lubridate,因为它看起来更容易确定某些股票市场何时开市。
给定当前日期,如何以数字形式提取前一个月?
因此,如果当前日期为:“二〇二二年十二月九日
前一个月= 11
如果当前日期为:二○二三年一月三日
前一个月= 12

library("timeDate")
current_date <- as.timeDate(Sys.Date())
rmbxnbpk

rmbxnbpk1#

library(timeDate)
if (match(months(dt), month.name) == 1) 12  else  match(months(dt), month.name) - 1

month.name 是一个以R为基数的对象,包含完整的月份名称。通过使用match,您可以在月份名称和月份数字之间进行转换。
由于月份从1到12循环,当你从1后退时,你需要到12,而不是0,因此if语句用于这个特殊情况。

相关问题