QQ登录

只需要一步,快速开始

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

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

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

1

主题

0

听众

2

积分

升级  40%

该用户从未签到

自我介绍
在校学生
跳转到指定楼层
1#
发表于 2013-8-1 06:07 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
我要写个function来检验末年是否是闰年。开头这样:
  1. leapyear<-function(x){}
复制代码
闰年这里的定义是:8 |0 B( P, x! M( @
如果那一年可以整除4(比如2004),2月就有29天
) s& C1 Z$ I3 e# A% |如果那一年不能整除100
: y) O2 I. m; C' X9 Q/ @如果那一年可以整除400, [4 ]8 [7 K) N% w1 z

9 K4 x/ w4 L' R" d! h. R! W4 A! ^9 S如果x<1,这个function就要return “error”。我不大懂这个条件的意思,可否请大师解释下?. i1 F3 c1 P, m/ e) o/ Q! x0 {

! a. m1 q" N! l: w7 {: @( V我写的function是这样的:
  1. leapyear<- function(dates, years_to_add)3 E* c+ _' Z) K/ i' P
  2. {  z% a& U5 Z\" z' h, p
  3.   if(!require(lubridate)) stop("install lubridate")
      c3 E+ \\" _- g( w7 g# K/ w: v. ?
  4.   if(years_to_add > floor(years_to_add)) stop("error"); s! k+ a7 ^) T# }
  5.   \" a( M4 ~$ m% N  ~( X- |
  6.   new <- dates + years(years_to_add)
    - N; I. t; c9 f1 D4 ]1 I
  7.   new[
    & ^. D\" }: x, l# z: q2 @
  8.     leap_year(year(dates)) &
    : D( T5 ]( s$ b0 N4 B* Y3 E. _
  9.       !leap_year(year(dates) + years_to_add) &
    + A1 |$ n( f$ q; R3 r( I
  10.       month(dates) == 2 &
    - o0 J) \( s9 n  c) z# u( I
  11.       day(dates) == 29
    ( a6 G# o6 Q$ U6 F3 ^7 Q
  12.     ] <- NA* a+ L+ \8 }/ W8 E
  13.   new_dates
    \" Z0 z2 U8 [! m) Y  d: Q
  14. }
    % U# m6 c* H: h. d# c4 ?' x

  15. ; d! n2 i' R3 V\" }0 S! T
  16. dates <- ymd(c("2004-2-28", "2004-2-29"))
复制代码
不知道对不对,但是检验的时候显示ymd找不到。。。。7 Z, U8 {% j) x) x5 g/ p' T

7 K. A7 z7 r% T# |9 u9 ?* ~% K, o请各位大师帮帮忙!小妹感激不尽!
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-14 21:05 , Processed in 0.341251 second(s), 60 queries .

回顶部