QQ登录

只需要一步,快速开始

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

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

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

1

主题

0

听众

2

积分

升级  40%

该用户从未签到

自我介绍
在校学生
跳转到指定楼层
1#
发表于 2013-8-1 06:07 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
我要写个function来检验末年是否是闰年。开头这样:
  1. leapyear<-function(x){}
复制代码
闰年这里的定义是:
3 D! V4 S+ a- E/ g& C3 r. {如果那一年可以整除4(比如2004),2月就有29天$ P; G4 q, e# D- ~! _; y5 G
如果那一年不能整除100
2 N' @( Z9 p+ U( _7 C如果那一年可以整除400
6 e1 s) C: |9 ^0 H' R6 T( U4 m' W; w
如果x<1,这个function就要return “error”。我不大懂这个条件的意思,可否请大师解释下?
- [6 l' H/ L+ O9 ]6 e
3 i6 k$ m2 T7 G5 |) k我写的function是这样的:
  1. leapyear<- function(dates, years_to_add)$ g9 O& b1 u6 ]: k+ J
  2. {
    / T5 `  U3 j8 W0 \, t; \+ g
  3.   if(!require(lubridate)) stop("install lubridate")0 t  _2 }9 s. T1 c+ A9 ]0 T
  4.   if(years_to_add > floor(years_to_add)) stop("error")$ q$ c) Q* K, t: l  y, Z* g8 x  N
  5.   
    / c3 [/ g\" q: C3 {8 U4 J
  6.   new <- dates + years(years_to_add)6 B* x, M% S. L+ g
  7.   new[# X; C4 W2 |) I( O7 I
  8.     leap_year(year(dates)) & 0 I* K' D: N- r0 C) d
  9.       !leap_year(year(dates) + years_to_add) &
    1 F2 c: d+ Q/ Y: E! e( {7 M
  10.       month(dates) == 2 & * c+ w/ J* J0 y1 S: T; N
  11.       day(dates) == 29
    \" V% q/ R: ?& n( S
  12.     ] <- NA
    % O\" R( P* b% @& K4 a3 i  i
  13.   new_dates
    ' w4 ]& b4 P0 \/ y
  14. }
    5 j; w- o! M$ B* C( `
  15. : n9 Y: {. b, ?* T5 ?
  16. dates <- ymd(c("2004-2-28", "2004-2-29"))
复制代码
不知道对不对,但是检验的时候显示ymd找不到。。。。, E; k# d2 C# x
" U7 d, F4 m/ f# E8 ?
请各位大师帮帮忙!小妹感激不尽!
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-16 16:03 , Processed in 0.657588 second(s), 59 queries .

回顶部