码迷,mamicode.com
首页 > 编程语言 > 详细

R语言学习笔记:日期处理

时间:2014-10-29 23:48:40      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   ar   for   sp   数据   on   2014   

1、取出当前日期

Sys.Date()

[1] "2014-10-29"

date()  #注意:这种方法返回的是字符串类型

[1] "Wed Oct 29 20:36:07 2014"

2、在R中日期实际是double类型,是从1970年1月1日以来的天数

typeof(Sys.Date())

[1] "double"

3、转换为日期

用as.Date()可以将一个字符串转换为日期值,默认格式是yyyy-mm-dd。

as.Date("2007-02-01")   #得到"2007-02-01",显示为字符串,但实际是用double存储的

as.double(as.Date("1970-01-01"))  #结果为0,是从1970年1月1日以来的天数。

可以把定制的日期字符串转换为日期型

as.Date("2007年2月1日", "%Y年%m月%d日") 

[1] "2007-02-01"

格式

意义

%Y

年份,以四位数字表示,2007

%m

月份,以数字形式表示,从01到12

%d

月份中当的天数,从01到31

 

 

%b

月份,缩写,Feb

%B

月份,完整的月份名,指英文,February

%y

年份,以二位数字表示,07

4、把日期值输出为字符串

today <- Sys.Date()

format(today, "%Y年%m月%d日")

[1] "2014年10月29日"

5、计算日期差

由于日期内部是用double存储的天数,所以是可以相减的。

today <- Sys.Date()

gtd <- as.Date("2011-07-01")   #我是从2011年7月开始实践GTD的

today - gtd

Time difference of 1216 days  

原来我已经实践GTD有1216天了。

用difftime()函数可以计算相关的秒数、分钟数、小时数、天数、周数

difftime(today, gtd, units="weeks")  #还可以是“secs”, “mins”, “hours”, “days”

Time difference of 173.7143 weeks

 

继续用R语言解决一个我的实际问题:统计fitbit计步器中的数据并绘图

# 读入CSV格式的fitbit统计数据

fitbit <- read.csv("fitbit.csv")

# 日期要转换一下

fitbit$date <- as.Date(fitbit$date, "%Y年%m月%d日")

# 画图,只画线

plot(fitbit$date, fitbit$step, type="l")

bubuko.com,布布扣

 

# 只统计八月的运动情况

fitbit8 <- fitbit[months(fitbit$date)=="八月", ]
plot(fitbit8$date, fitbit8$step, type="l")

bubuko.com,布布扣

R语言学习笔记:日期处理

标签:style   blog   http   ar   for   sp   数据   on   2014   

原文地址:http://www.cnblogs.com/speeding/p/4060500.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!