R语言与格式、日期格式、格式转化
 (2017-04-21 10:24:51)
	
			
					(2017-04-21 10:24:51)		| 标签: r语言数据分析数据分析师数据挖掘 | 
R语言的基础包中提供了两种类型的时间数据,一类是Date日期数据,它不包括时间和时区信息,另一类是POSIXct/POSIXlt类型数据,其中包括了日期、时间和时区信息。基本总结如下:
日期data,存储的是天;
时间POSIXct 存储的是秒,POSIXlt 打散,年月日不同;
日期-时间=不可运算。
一般来讲,R语言中建立时序数据是通过字符型转化而来,但由于时序数据形式多样,而且R中存贮格式也是五花八门,例如Date/ts/xts/zoo/tis/fts等等。lubridate包(后续有介绍,应用四),timeDate包,都有用。
常见的格式:
http://www.cda.cn/uploadfile/image/20170420/20170420131124_10956.png
[plain] view plain copy
print?在CODE上查看代码片派生到我的代码片
 
 
 
 
 
在data.frame中,是可以实现数据集重命名的,比如data.frame(x=iris,y=cars),
也可以实现横向、纵向重命名,data.frame(x=iris,y=cars,row.names=iris)
——————————————————————————————————————————
后续加更内容
应用1——如何通过生日计算年龄
应用2——日期分组
应用三——生成按天的时间序列并进行回归
应用四:灵活处理时间数据—lubridate包(来源TipDM)
应用五:如何在循环、函数中,输出实时时间消耗?
——————————————————————————————————————————
时间的标准格式
mydate = as.POSIXlt(’2005-4-19 7:01:00’)
names(mydate)
默认情况下,日期之前是以/或者-进行分隔,而时间则以:进行分隔;
输入的标准格式为:日期 时间(日期与时间中间有空隔隔开)
时间的标准格式为:时:分 或者 时:分:秒;
如果输入的格式不是标准格式,则同样需要使用strptime函数,利用format来进行指定。
——————————————————————————————————————————
一、日期型数据——data
1、as.Data函数
在R中自带的日期形式为:as.Date();以数值形式存储;
对于规则的格式,则不需要用format指定格式;如果输入的格式不规则,可以通过format指定的格式读入;其中以1970-01-01定义为第0天,之后的年份会以距离这天来计算。
[html] view plain copy
print?在CODE上查看代码片派生到我的代码片
 
 
 
 
 
 
代码解读:unclass可以将日期变成以天来计数,比如1970-02-01输出的31,就代表着距离1970-01-01有31天。
as.data中的参数格式:年-月-日或者年/月/日;如果不是以上二种格式,则会提供错误——错误于charTo按照Date(x) :
字符串的格式不够标准明确;
例如这样的数据格式,就常常报错。
19:15.
 
[plain] view plain copy
print?在CODE上查看代码片派生到我的代码片
 
 
 
2、%d%y%m-基本格式
格式
意义
%d
 
月份中当的天数
%m
 
月份,以数字形式表示
%b
 
月份,缩写
%B
 
月份,完整的月份名,指英文
%y
 
年份,以二位数字表示
%Y
 
年份,以四位数字表示
#其它日期相关函数
weekdays()取日期对象所处的周几;
months()取日期对象的月份;
quarters()取日期对象的季度。
————————————————————————————————————————
二、时间型——POSIXct与POSIXlt
POSIXct
是以1970年1月1号开始的以秒进行存储,如果是负数,则是1970-01-01年以前;正数则是1970年以后。
POSIXlt 是以列表的形式存储:年、月、日、时、分、秒,作用是打散时间;
1、POSIXlt 格式
主要特点:作用是打散时间,把时间分成年、月、日、时、分、秒,并进行存储。
可以作为时间筛选的一种。
[html] view plain copy
print?在CODE上查看代码片派生到我的代码片
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 加载中…
加载中…