QQ登录

只需要一步,快速开始

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

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

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

1

主题

0

听众

2

积分

升级  40%

该用户从未签到

自我介绍
在校学生
跳转到指定楼层
1#
发表于 2013-8-1 06:07 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
我要写个function来检验末年是否是闰年。开头这样:
  1. leapyear<-function(x){}
复制代码
闰年这里的定义是:4 g8 L3 k" ~$ h7 N0 i
如果那一年可以整除4(比如2004),2月就有29天' {6 q0 b# p0 j
如果那一年不能整除100+ f& l- r! g8 P
如果那一年可以整除400& ?* [/ W% m( G4 p

5 O) J$ i; r4 s1 ]9 q9 X1 ^" @: Q0 f) H$ V如果x<1,这个function就要return “error”。我不大懂这个条件的意思,可否请大师解释下?
! R4 [( A& e3 t4 V: _% ~# J& q5 ~8 f* N( O9 N* L% {7 `
我写的function是这样的:
  1. leapyear<- function(dates, years_to_add)* g\" {& {$ p  v, O5 F\" A- |
  2. {2 p' X+ _- s$ V' K2 |' |# a+ J# `% G
  3.   if(!require(lubridate)) stop("install lubridate")9 G1 ^: A4 }/ I( D3 R
  4.   if(years_to_add > floor(years_to_add)) stop("error")
    1 @0 G2 @' [/ U\" h\" ^
  5.   ! |$ [+ w% t! r\" \% r# }5 {
  6.   new <- dates + years(years_to_add)
    3 H) y* y$ E\" s/ t3 `
  7.   new[: J5 T4 X9 d: h: O/ g
  8.     leap_year(year(dates)) &
    - G' V7 R* E6 M5 V
  9.       !leap_year(year(dates) + years_to_add) &
    8 m# ?# \. y7 _* z5 b
  10.       month(dates) == 2 &
    5 G, q; W- x8 C, v8 q9 O! o
  11.       day(dates) == 29
    $ I8 H$ z& i# G
  12.     ] <- NA
    \" @) {. \4 y( H* W3 F
  13.   new_dates% m1 H9 ~( s& w' c
  14. }
    , p\" E. [/ n+ r0 b
  15. 2 u: b& l9 C0 Y1 ~+ M2 u\" D1 m) _: D0 B
  16. dates <- ymd(c("2004-2-28", "2004-2-29"))
复制代码
不知道对不对,但是检验的时候显示ymd找不到。。。。- |9 d- H: f. R( E
$ a. k; t7 O$ m. D# a% G$ {& e( b9 H
请各位大师帮帮忙!小妹感激不尽!
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-11 01:48 , Processed in 0.455831 second(s), 58 queries .

回顶部