- 在线时间
- 0 小时
- 最后登录
- 2013-8-1
- 注册时间
- 2013-8-1
- 听众数
- 0
- 收听数
- 0
- 能力
- 0 分
- 体力
- 3 点
- 威望
- 0 点
- 阅读权限
- 10
- 积分
- 2
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1
- 主题
- 1
- 精华
- 0
- 分享
- 0
- 好友
- 1
升级   40% 该用户从未签到 - 自我介绍
- 在校学生
 |
我要写个function来检验末年是否是闰年。开头这样:闰年这里的定义是:* ^" H/ v* P, d( k
如果那一年可以整除4(比如2004),2月就有29天
$ g9 a+ M) n! U" d/ u如果那一年不能整除100 j7 @0 E3 j4 O1 H3 ?& a
如果那一年可以整除400: }- \+ b0 r C& r; M
) P; K& V1 G m# L& Y2 Q( I! c
如果x<1,这个function就要return “error”。我不大懂这个条件的意思,可否请大师解释下?
5 {) K3 G- w f) {7 [1 r; V9 b$ I( ^
我写的function是这样的:- leapyear<- function(dates, years_to_add)
' R5 H5 ~) b( ~. J0 P' p - {
: q( e0 c8 P, b% _, g2 { - if(!require(lubridate)) stop("install lubridate")
$ T\" F\" j& z w* X8 l - if(years_to_add > floor(years_to_add)) stop("error")
3 S$ ?& R( l: ^: H( V: [ [1 C$ g - 3 x# }. h7 e\" |' T
- new <- dates + years(years_to_add)3 y8 s4 L( u9 m) w
- new[3 V) P5 J6 I6 s) L. l0 g
- leap_year(year(dates)) &
q8 \' _ j6 a# g ]& f - !leap_year(year(dates) + years_to_add) &
5 D& m; l# V6 E - month(dates) == 2 & : b# T Y, B9 m7 u9 k
- day(dates) == 29
# K$ t: x( g. N8 ]: e/ L9 g - ] <- NA
$ S4 l4 `# U* F2 e\" ?% I/ r5 ~ - new_dates
; E6 V( ] m, ]* F* B7 K - } C8 s5 u9 D6 d+ ]
- \" t f9 a$ @' x4 v4 t
- dates <- ymd(c("2004-2-28", "2004-2-29"))
复制代码 不知道对不对,但是检验的时候显示ymd找不到。。。。7 i3 L8 M5 v5 m: e& _$ l
. @5 I4 M# I3 H1 T8 v& ?请各位大师帮帮忙!小妹感激不尽! |
zan
|