QQ登录

只需要一步,快速开始

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

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

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

1

主题

0

听众

2

积分

升级  40%

该用户从未签到

自我介绍
在校学生
跳转到指定楼层
1#
发表于 2013-8-1 06:07 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
我要写个function来检验末年是否是闰年。开头这样:
  1. leapyear<-function(x){}
复制代码
闰年这里的定义是:
; o$ _% w! Y+ ?5 w如果那一年可以整除4(比如2004),2月就有29天- v. y/ G) R3 p' g  D  P/ B# {& N
如果那一年不能整除100
5 A6 M; y2 [' k  W2 ^如果那一年可以整除4006 a1 m  t4 k1 N: f; Z& n1 T* v
9 Z" U- n/ c' X3 Y/ e
如果x<1,这个function就要return “error”。我不大懂这个条件的意思,可否请大师解释下?: W2 a$ z( I3 m6 z; [' o( i

+ w. k3 k4 j6 f; T我写的function是这样的:
  1. leapyear<- function(dates, years_to_add)+ V1 D6 Z& M7 @/ {7 |) Y, \9 o
  2. {% |+ k\" ^: m7 o8 s, j* {
  3.   if(!require(lubridate)) stop("install lubridate")2 O2 P# T  f' a/ Y
  4.   if(years_to_add > floor(years_to_add)) stop("error")
    ( R& k4 E\" q; C% u. N
  5.   
    - C* Q8 I8 T, q
  6.   new <- dates + years(years_to_add)3 h& W6 y$ x$ a; i2 H- f. H
  7.   new[
    ' k1 h4 m! q+ C9 n7 I8 h& C# G; A
  8.     leap_year(year(dates)) &
    ( w. c+ l! }( S. P\" k
  9.       !leap_year(year(dates) + years_to_add) &
    . h: N+ B  d; j2 T8 w% n- u
  10.       month(dates) == 2 &
    0 i* f3 ~3 x, X, J4 J+ a0 p7 H  I! A0 `! G
  11.       day(dates) == 29
    # j( D0 b3 _; K. t! j/ V- c
  12.     ] <- NA
      K' k! g9 k& o# B
  13.   new_dates
    ) k; a7 D; v% [4 d) S
  14. }
    ( G8 \5 R6 }& t
  15. # z; ?! _- z\" a; L; y' s
  16. dates <- ymd(c("2004-2-28", "2004-2-29"))
复制代码
不知道对不对,但是检验的时候显示ymd找不到。。。。
5 G# o, w8 t! a$ n! s: f+ d  l& g& n9 j$ D
请各位大师帮帮忙!小妹感激不尽!
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-7-10 21:22 , Processed in 0.384717 second(s), 60 queries .

回顶部