- 在线时间
- 0 小时
- 最后登录
- 2013-8-1
- 注册时间
- 2013-8-1
- 听众数
- 0
- 收听数
- 0
- 能力
- 0 分
- 体力
- 3 点
- 威望
- 0 点
- 阅读权限
- 10
- 积分
- 2
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1
- 主题
- 1
- 精华
- 0
- 分享
- 0
- 好友
- 1
升级   40% 该用户从未签到 - 自我介绍
- 在校学生
 |
我要写个function来检验末年是否是闰年。开头这样:闰年这里的定义是:8 |0 B( P, x! M( @
如果那一年可以整除4(比如2004),2月就有29天
) s& C1 Z$ I3 e# A% |如果那一年不能整除100
: y) O2 I. m; C' X9 Q/ @如果那一年可以整除400, [4 ]8 [7 K) N% w1 z
9 K4 x/ w4 L' R" d! h. R! W4 A! ^9 S如果x<1,这个function就要return “error”。我不大懂这个条件的意思,可否请大师解释下?. i1 F3 c1 P, m/ e) o/ Q! x0 {
! a. m1 q" N! l: w7 {: @( V我写的function是这样的:- leapyear<- function(dates, years_to_add)3 E* c+ _' Z) K/ i' P
- { z% a& U5 Z\" z' h, p
- if(!require(lubridate)) stop("install lubridate")
c3 E+ \\" _- g( w7 g# K/ w: v. ? - if(years_to_add > floor(years_to_add)) stop("error"); s! k+ a7 ^) T# }
- \" a( M4 ~$ m% N ~( X- |
- new <- dates + years(years_to_add)
- N; I. t; c9 f1 D4 ]1 I - new[
& ^. D\" }: x, l# z: q2 @ - leap_year(year(dates)) &
: D( T5 ]( s$ b0 N4 B* Y3 E. _ - !leap_year(year(dates) + years_to_add) &
+ A1 |$ n( f$ q; R3 r( I - month(dates) == 2 &
- o0 J) \( s9 n c) z# u( I - day(dates) == 29
( a6 G# o6 Q$ U6 F3 ^7 Q - ] <- NA* a+ L+ \8 }/ W8 E
- new_dates
\" Z0 z2 U8 [! m) Y d: Q - }
% U# m6 c* H: h. d# c4 ?' x
; d! n2 i' R3 V\" }0 S! T- dates <- ymd(c("2004-2-28", "2004-2-29"))
复制代码 不知道对不对,但是检验的时候显示ymd找不到。。。。7 Z, U8 {% j) x) x5 g/ p' T
7 K. A7 z7 r% T# |9 u9 ?* ~% K, o请各位大师帮帮忙!小妹感激不尽! |
zan
|