R语言中日期值通常以字符串形式出现,并转化为以数值形式储存的日期变量。
描述
通过函数as.Date()
执行这种转化。
语法格式为as.Date(x,'input_format')
,其中x
是字符型数据,input_format
则给出了用于读入日期的适当格式。
日期格式:
符号 | 含义 | 示例 |
---|---|---|
%d | 数字表示日期(0~31) | 01~31 |
%a | 缩写的星期名 | Mon |
%A | 非缩写星期名 | Monday |
%m | 月份(00~12) | 00~12 |
%b | 缩写的月份 | Jan |
%B | 非缩写月份 | January |
%y | 两位数年份 | 19 |
%Y | 四位数年份 | 2019 |
示例
日期值默认输入格式为yyyy-mm-dd。
格式为:
mydate <- as.Date(c('2007-06-22','2004-02-13'))
返回当天的日期可以用Sys.Date()函数
。date()
函数可以返回当前日期和时间。
Sys.Date()
[1] "2019-11-21"
date()
[1] "Thu Nov 21 21:33:35 2019"
可以使用函数format(x,format='output_format')
来输出指定格式的日期值,并且可以提取日期值中的某些部分。
format(today,format='%B %d %y')
[1] "十一月 21 19"
可以使用函数difftime()
来计算时间间隔,并以星期、天、时、分、秒来表示。
today <- Sys.Date()
date <- as.Date('1949-10-1')
difftime(today,date,units = 'weeks')
Time difference of 3659.714 weeks
还可以使用lubridate包、timeDate包进行更多日期值操作。