R语言中判断闰年与平年的方法与获取指定月份的天数

R语言中判断闰年与平年的方法与获取指定月份的天数

初学者,如有错误,还请谅解!

CalDateDays <- function(date){
  year <- as.numeric(format(date,format = "%Y"))
  m <- format(date,format = "%m")
  days31 <- c("01","03","05","07","08","10","12")
  days30 <- c("04","06","09","11")
  days29 <- c("02")
  days28 <- c("02")
  if ((year %% 4 == 0) & (year %% 100 != 0)) {
    yearDays <- 366
    if(m %in% days31){
      monthDays <- 31
    }else if(m %in% days30){ 
      monthDays <- 30
    }else if(m %in% days29){
      monthDays <- 29
    } 
  }else if ((year %% 100 == 0) & (year %% 400 == 0)) {
    yearDays <- 366
    if(m %in% days31){
      monthDays <- 31
    }else if(m %in% days30){ 
      monthDays <- 30
    }else if(m %in% days29){
      monthDays <- 29
    } 
  }else{
    yearDays <- 365
    if(m %in% days31){
      monthDays <- 31
    }else if(m %in% days30){ 
      monthDays <- 30
    }else if(m %in% days28){
      monthDays <- 28
    } 
  }
  return(c(yearDays,monthDays))
}

============ 实例 ===============
date<-as.Date("2000-2-11","%Y-%m-%d")
date
days<-CalDateDays(date)
days
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值