You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在lubridate中表达当月15日以实现日期判断的if-else逻辑

R 日期判断实现方案

你可以通过lubridate内置的日期处理函数生成当月15日的日期对象,替换你代码里的15TH_OF_THE_MONTH变量即可,两种常用实现方式如下:

  • 方案1:取当月首日加14天生成当月15日
library(lubridate)
# 生成当月15日
month_15th <- floor_date(Sys.Date(), unit = "month") + days(14)
# 执行判断,ifelse会自动把日期转成数值,结束后要转回日期格式
res <- as.Date(ifelse(Sys.Date() > month_15th, Sys.Date(), Sys.Date() - months(1)), origin = "1970-01-01")
print(res)
  • 方案2:直接拼接当前年、月、日生成当月15日
library(lubridate)
month_15th <- make_date(year = year(Sys.Date()), month = month(Sys.Date()), day = 15)
res <- as.Date(ifelse(Sys.Date() > month_15th, Sys.Date(), Sys.Date() - months(1)), origin = "1970-01-01")
print(res)

注意:如果需要把15日当天归为「晚于等于15日」的分支,把判断运算符从>改成>=即可。

内容的提问来源于stack exchange,提问作者sa90210

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 13:24:03