QQ登录

只需要一步,快速开始

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

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

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

1

主题

0

听众

2

积分

升级  40%

该用户从未签到

自我介绍
在校学生
跳转到指定楼层
1#
发表于 2013-8-1 06:07 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
我要写个function来检验末年是否是闰年。开头这样:
  1. leapyear<-function(x){}
复制代码
闰年这里的定义是:4 \8 s+ H* [* W! A7 v- S
如果那一年可以整除4(比如2004),2月就有29天
# V8 r0 [1 ?; Z* l$ S+ \如果那一年不能整除1000 V) a$ T) Q# [! H
如果那一年可以整除400
7 x3 U9 P4 C  a: I4 ~* V  P( ~9 a- y# s# ~8 |4 q; ~1 d2 |0 E. K% x
如果x<1,这个function就要return “error”。我不大懂这个条件的意思,可否请大师解释下?" P) \+ ]% _5 K: S
& g* G1 p9 H9 n+ C9 D) H$ m5 A
我写的function是这样的:
  1. leapyear<- function(dates, years_to_add)
    / A* P) c* A. ^, D' d
  2. {; ]\" v' L' W* f: y' H9 I& A
  3.   if(!require(lubridate)) stop("install lubridate")
    1 m% N* E( u! x5 H/ _2 r& n$ }8 p: f
  4.   if(years_to_add > floor(years_to_add)) stop("error")3 m0 @5 U  Q! q! o
  5.   
    : x4 v0 \* K7 v! B2 c# X8 s- d
  6.   new <- dates + years(years_to_add)& n. A* v! f3 _
  7.   new[
    ; r8 E) \, z; D. v+ g. W1 c) u
  8.     leap_year(year(dates)) &
    - Y3 i, H4 F/ Q6 m. s+ J8 u
  9.       !leap_year(year(dates) + years_to_add) &
    # L! {- a) e. f4 y( i
  10.       month(dates) == 2 &
    & Y5 n+ o; o( ?; u
  11.       day(dates) == 29! e$ o9 i8 i  i4 ^& a0 U! g# Y\" S  _& E
  12.     ] <- NA) E, C6 M6 f+ L: Z7 \( F
  13.   new_dates$ V3 [! p- N! B3 k1 m
  14. }5 v2 V! j; U, T. k1 L

  15. % M1 @, x( e, h. Q2 X; v
  16. dates <- ymd(c("2004-2-28", "2004-2-29"))
复制代码
不知道对不对,但是检验的时候显示ymd找不到。。。。
9 C6 I* [& ?2 G4 {' S& E$ C9 P; V' Q! c
请各位大师帮帮忙!小妹感激不尽!
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:59 , Processed in 0.429926 second(s), 58 queries .

回顶部