QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2358|回复: 0
打印 上一主题 下一主题

怎样用function来检验是否是闰年

[复制链接]
字体大小: 正常 放大
夜筱巫        

1

主题

0

听众

2

积分

升级  40%

该用户从未签到

自我介绍
在校学生
跳转到指定楼层
1#
发表于 2013-8-1 06:07 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
我要写个function来检验末年是否是闰年。开头这样:
  1. leapyear<-function(x){}
复制代码
闰年这里的定义是:( D+ b6 ?/ T( t, F( y& I8 r. B  T
如果那一年可以整除4(比如2004),2月就有29天) f. h7 f. D) h. L& }
如果那一年不能整除100
4 ?9 }0 }! I1 f( O7 ^# e如果那一年可以整除400
5 I. S( |5 ?) G& t- b+ k
3 ~/ a$ T" P) n1 z8 A2 W- c4 c8 [如果x<1,这个function就要return “error”。我不大懂这个条件的意思,可否请大师解释下?
2 c4 n9 L  ?7 }: m
9 \: W( M" P3 g# q' m3 X# i我写的function是这样的:
  1. leapyear<- function(dates, years_to_add)
    9 _; q* }' z# T, x; ]: [) b; q- Y
  2. {+ ~, m4 t) Y/ B0 @7 q3 v
  3.   if(!require(lubridate)) stop("install lubridate")
    2 M4 N0 j: o& l: P9 Q# ~- W9 {
  4.   if(years_to_add > floor(years_to_add)) stop("error"). S$ k+ y' _' g4 t$ U
  5.   1 n5 P2 M6 D9 ^! h3 s6 h
  6.   new <- dates + years(years_to_add)! {7 T# }# L1 B5 |. h( @0 }9 _
  7.   new[: v) J7 I, s\" `/ O/ _: f$ z0 p
  8.     leap_year(year(dates)) &
    ; [( b; Y% i: C9 j5 }9 h
  9.       !leap_year(year(dates) + years_to_add) & ; }6 \& k( u9 R0 ^. m
  10.       month(dates) == 2 & * A: B$ F8 W. U
  11.       day(dates) == 29
    ( A5 Q8 w  R: G
  12.     ] <- NA
    # ~8 m; p/ J9 S9 Q
  13.   new_dates' y7 t- H. N8 J, c
  14. }: W7 U7 c& Z% p, [9 o

  15. * Z* o. [  s0 l2 y) w, [
  16. dates <- ymd(c("2004-2-28", "2004-2-29"))
复制代码
不知道对不对,但是检验的时候显示ymd找不到。。。。
  [/ P& |9 |9 x, |! B( q  x( [& E9 }7 W8 S+ ]: }
请各位大师帮帮忙!小妹感激不尽!
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-8-23 18:12 , Processed in 0.468661 second(s), 60 queries .

回顶部