- 在线时间
- 0 小时
- 最后登录
- 2013-8-1
- 注册时间
- 2013-8-1
- 听众数
- 0
- 收听数
- 0
- 能力
- 0 分
- 体力
- 3 点
- 威望
- 0 点
- 阅读权限
- 10
- 积分
- 2
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1
- 主题
- 1
- 精华
- 0
- 分享
- 0
- 好友
- 1
升级   40% 该用户从未签到 - 自我介绍
- 在校学生
 |
我要写个function来检验末年是否是闰年。开头这样:闰年这里的定义是:
' t7 u: h* V6 O$ e如果那一年可以整除4(比如2004),2月就有29天' B0 s+ Q6 V, I: U4 x3 x6 j! o2 ~8 |
如果那一年不能整除100
) ~+ d* y& Q2 F' j5 e6 J# d9 P如果那一年可以整除400
1 m! z: ]2 V& B _9 J9 S- D7 M) l& L- y3 ~1 x
如果x<1,这个function就要return “error”。我不大懂这个条件的意思,可否请大师解释下?, N8 f$ N& A3 a2 `! s
/ R8 N8 m/ T s' S$ s
我写的function是这样的:- leapyear<- function(dates, years_to_add)
' ^9 g: c2 O/ v, K o! K: ~+ E - {
5 W; Y0 v1 ~! V+ m+ u: { - if(!require(lubridate)) stop("install lubridate")
1 N; V9 T0 ^1 i. k% t5 g, K, H# | - if(years_to_add > floor(years_to_add)) stop("error")
\" f9 j) B+ W d. |6 a - O7 {+ C\" l* q, n4 Y. Y( k- N- r* ^
- new <- dates + years(years_to_add)
; ?. \; y4 [/ G' G - new[
+ Z6 G+ h. [6 K - leap_year(year(dates)) &
( G9 Q9 e& v; m) l& ]0 p( k4 F - !leap_year(year(dates) + years_to_add) &
3 C# A. u. }4 @2 m0 X - month(dates) == 2 & ) g* `3 a# f+ @9 i+ C
- day(dates) == 292 L\" P* y6 s* w3 s: F, D2 X, m1 V
- ] <- NA6 I' V9 G\" }4 Y6 \; U1 C* a6 T8 _7 q
- new_dates
- U! j3 |; q2 O, d - }2 k# @* c+ T1 C6 W6 b
- $ d9 v3 H: u$ T! ~( \
- dates <- ymd(c("2004-2-28", "2004-2-29"))
复制代码 不知道对不对,但是检验的时候显示ymd找不到。。。。
; L t3 e9 c/ g
; @8 Q; H! |1 l请各位大师帮帮忙!小妹感激不尽! |
zan
|