R语言日期的表示和运算(详细总结)
-
R
语言日期的表示和运算(详细总结)
1
、取出当前日期
()
[1]
date()
#
注意:这种方法返回的是字符串类型
[1]
2
、在
R
中日期实际是
double
类型,
是从
1970
年
1
月
1
日以来的天数
typeof(())
[1]
3
、转换为日期
用
()
可以将一个字符串转换为日期值,默认格式是
yyyy-mm-dd
。
< br>(
得到
,显示为字符串,但实际
是用
double
存储的
((
结果为
0
,
是从
1970
年
1
p>
月
1
日以来的天数。
可以把定制的日期字符串转换为日期型
< br>(
年
2
月
1
日
年
%m
月
%d
日
p>
[1]
格
式
意义
%
Y
年份,以四位数字表示,
2007
%
m
月份,以数字形式表示,从
p>
01
到
12
%
d
月份中当的天数,从
01
到
31
%
b
月份,缩写,
Feb
%
B
月份,完整的月份名,指英文,
February
%
y
年份,以二位数字表示,
07
4
、把日期值输出为字符串
today <- ()
format(today,
p>
年
%m
月
%d
p>
日
[1]
年
p>
10
月
29
日
p>
5
、计算日期差
由于日期内部是用
double
存储的
天数,所以是可以相减的。
today <- ()
gtd <- (
today -
gtd
Time difference of 1216 days
用
dif
ftime()
函数可以计算相关的秒数、分钟数、小时数、天数、周数
difftime(today, gtd,
units=
还可以是
“secs”, “mins”,
“hours”, “days”
Time
difference of 173.7143 weeks
#
日期型数据
在
R
中自带的日期形式为:
();<
/p>
以数值形式存储;
对于规则的格式,则
不需要用
format
指定格式;如果输入的格式不规则,可以
通过
format
指定的格式读入;
标准格式:
年
-
月
-
日或者年
/
月
/
日;如果不是以上二种格式
,则会提供错误;
('23-2013-1')
错误于
charTo
按照
Date(x) :
字符串的格式不够标准明确
> ('23-2013-1',format='%d-%Y-%m')
[1]
格式
%d
%m
%b
%B
%y
%Y
意义
月份中当的天数
月份,以数字形式表示
月份,缩写
月份,完整的月份名,指英文
年份,以二位数字表示
年份,以四位数字表示
#
其它日期相关函数
weekdays
()取日期对象所处的周几;
months
()取日期对象的月份;
quarters
()取日期对象的季度;
#POSIX
类
The POSIXct class stores date/time
values as the number of seconds since January 1,
1970, while the POSIXlt class stores
them as a list with elements for second, minute,
hour,
day, month, and year, among
others.
POSIXct
是以
1970
年
1
月
1
号开始的以秒进行存储,
如果是负数,则是
1970
年以前;
正
数则是
1970
年以后。
POSIXlt
是以列表的形式存储:年、月、日、时、分、秒;
mydate =
t(’2
005-4-
19
7:01:00’)
names(mydate)
默认情况下,日期之前是以
/
或者
-
进行分隔,而时间则以:进行分隔;
输入的标准格式为:日期
时间(日期与时间中间有空隔隔开)
时间的标准格式为:时
:
分
或者
时
:<
/p>
分
:
秒;