QQ登录

只需要一步,快速开始

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

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

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

1

主题

0

听众

2

积分

升级  40%

该用户从未签到

自我介绍
在校学生
跳转到指定楼层
1#
发表于 2013-8-1 06:07 |只看该作者 |正序浏览
|招呼Ta 关注Ta
我要写个function来检验末年是否是闰年。开头这样:
  1. leapyear<-function(x){}
复制代码
闰年这里的定义是:
1 |3 k7 V5 z7 t9 ]2 Y4 n1 V如果那一年可以整除4(比如2004),2月就有29天
( M% e  f9 Y3 E0 P- n( N如果那一年不能整除100/ S* E  o8 d) n9 |7 R7 j7 [$ j
如果那一年可以整除400+ U3 ~/ Q+ S7 R' ]: O  _$ ?

5 l3 ^! H& }* F7 L如果x<1,这个function就要return “error”。我不大懂这个条件的意思,可否请大师解释下?
2 A& _& e8 N# Z& ~' L
. C9 L% u6 I/ z7 o9 [/ a: y我写的function是这样的:
  1. leapyear<- function(dates, years_to_add)
    2 Y  B1 [5 d% z: s1 @. _' n
  2. {
    9 O+ g& ~9 X0 e, q; Z
  3.   if(!require(lubridate)) stop("install lubridate")4 E7 g. D& T3 k* U) i5 s/ M
  4.   if(years_to_add > floor(years_to_add)) stop("error")
    9 n6 e& E. e, Y, a1 z
  5.   2 R, }! S/ C: [6 v  z8 ]+ p
  6.   new <- dates + years(years_to_add)8 i8 ?4 \5 \/ H  {# t% ~
  7.   new[* z2 G% p/ [: g( A\" u) h
  8.     leap_year(year(dates)) & + `1 |# S) G5 a7 x  T
  9.       !leap_year(year(dates) + years_to_add) & % a& _; W, a/ J
  10.       month(dates) == 2 &
    0 f6 E; b. @4 W/ e$ ]
  11.       day(dates) == 294 _* y/ H' Y) ?% J& X* r
  12.     ] <- NA6 M. ?+ n  \8 y$ Z
  13.   new_dates; [. n4 }2 R  P1 v! M+ b
  14. }
    ) _9 G6 ~- t) Z

  15. ! g! C2 C4 E$ {, c  ~% x4 k( h
  16. dates <- ymd(c("2004-2-28", "2004-2-29"))
复制代码
不知道对不对,但是检验的时候显示ymd找不到。。。。
5 e: y' |2 S+ ~/ J2 \$ r4 _; `6 x% q$ w  u
请各位大师帮帮忙!小妹感激不尽!
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-4-13 13:10 , Processed in 0.437764 second(s), 62 queries .

回顶部