- 在线时间
- 0 小时
- 最后登录
- 2013-8-1
- 注册时间
- 2013-8-1
- 听众数
- 0
- 收听数
- 0
- 能力
- 0 分
- 体力
- 3 点
- 威望
- 0 点
- 阅读权限
- 10
- 积分
- 2
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1
- 主题
- 1
- 精华
- 0
- 分享
- 0
- 好友
- 1
升级   40% 该用户从未签到 - 自我介绍
- 在校学生
 |
我要写个function来检验末年是否是闰年。开头这样:闰年这里的定义是: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是这样的:- leapyear<- function(dates, years_to_add)* g\" {& {$ p v, O5 F\" A- |
- {2 p' X+ _- s$ V' K2 |' |# a+ J# `% G
- if(!require(lubridate)) stop("install lubridate")9 G1 ^: A4 }/ I( D3 R
- if(years_to_add > floor(years_to_add)) stop("error")
1 @0 G2 @' [/ U\" h\" ^ - ! |$ [+ w% t! r\" \% r# }5 {
- new <- dates + years(years_to_add)
3 H) y* y$ E\" s/ t3 ` - new[: J5 T4 X9 d: h: O/ g
- leap_year(year(dates)) &
- G' V7 R* E6 M5 V - !leap_year(year(dates) + years_to_add) &
8 m# ?# \. y7 _* z5 b - month(dates) == 2 &
5 G, q; W- x8 C, v8 q9 O! o - day(dates) == 29
$ I8 H$ z& i# G - ] <- NA
\" @) {. \4 y( H* W3 F - new_dates% m1 H9 ~( s& w' c
- }
, p\" E. [/ n+ r0 b - 2 u: b& l9 C0 Y1 ~+ M2 u\" D1 m) _: D0 B
- 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
|