- 返回当前日期时间,有两种方式:
- Sys.time()
- date()(常用)
- 仅返回当前日期,使用函数Sys.Date()。
- 转换日期变量格式,有多种方式:
-
- as.Date():此函数有多种使用方式。其一,类似于函数format()和as.character(),返回给定的日期参数的特定格式,如as.Date(Sys.Date())的返回结果为"2011-08-09"。其二、形式as.Date(x, origin) 返回自参数origin(参数值为一日期)起第x天。如as.Date(2, origin="2011-08-09")的返回结果为"2011-08-11"。
- format():如命令format(Sys.Date(), "%Y-%m-%d %w")的返回结果为"2011-08-09 2",其中2表示2011年8月9日为周二;若不指定返回的格式,则函数format()默认按照格式"%Y-%m-%d"返回,也就是说format(Sys.Date())和format(Sys.Date(), "%Y-%m-%d")的返回结果是相同的。
- as.character(),其使用方法同format()相同。
- 返回特定日期所对应的weekday、月份、季度,分别使用函数weekdays()、months()、quarters()。
- 求两个日期之间的差,可通过函数julian或者diff.Date()实现。如求2011-09-10和2011-08-09两天之间相隔的天数,可以通过julian(as.Date("2011-09-10"),origin=as.Date("2011-08-09"))[[1]]来求得。
- 生成时间序列向量,也有多种方式:
-
- 使用函数as.Date()。如as.Date(1:20, origin="2011-08-09")。
- 使用函数seq()。和seq()的一般使用方式的区别在于,梯度可以是
"day"
,"week"
,"month"
或者"year"
,甚至是"3 months"等。如seq(as.Date("2000/1/1"), by="month", length.out=3)的返回结果为 "2000-01-01" "2000-02-01" "2000-03-01";函数seq(as.Date("2000/1/1"), as.Date("2003/1/1"), by="6 months")的返回结果为 "2000-01-01" "2000-07-01" "2001-01-01" "2001-07-01" "2002-01-01" "2002-07-01" "2003-01-01"。
- 绘制图形,使用plot()即可。plot(x,y),其中参数x为日期时间类型的对象,y是与x相对应的数值。
转:http://blog.sina.com.cn/s/blog_6caea8bf0100wabs.html