←
PDF 265 / 520 From Strings
→
English · PDF 265
Original PDF page 265
中文 · PDF 265
  • 从字符串创建。
  • 从单独的日期时间组件创建。
  • 从已有的日期/时间对象创建。

它们的工作方式如下。

从字符串创建

日期/时间数据通常以字符串形式出现。你在第 134 页的“日期、日期时间和时间”中已经见过一种将字符串解析为日期时间的方法。另一种方法是使用 lubridate 提供的辅助函数。一旦你指定了组件的顺序,它们就会自动推断出格式。要使用它们,请确定年、月、日在日期中出现的顺序,然后按相同的顺序排列 "y"、"m" 和 "d"。这样就能得到解析你的日期所需的 lubridate 函数的名称。例如:

ymd("2017-01-31") #> [1] "2017-01-31" mdy("January 31st, 2017") #> [1] "2017-01-31" dmy("31-Jan-2017") #> [1] "2017-01-31"

这些函数也接受不带引号的数字。这是创建单个日期/时间对象最简洁的方式,比如在筛选日期/时间数据时可能就需要这样做。ymd() 简短且无歧义:

ymd(20170131) #> [1] "2017-01-31"

ymd() 及其相关函数用于创建日期。要创建日期时间,在解析函数名称中添加一个下划线以及 "h"、"m"、"s" 中的一个或多个:

ymd_hms("2017-01-31 20:11:59") #> [1] "2017-01-31 20:11:59 UTC" mdy_hm("01/31/2017 08:01") #> [1] "2017-01-31 08:01:00 UTC"

你也可以通过提供时区,强制将日期转换为日期时间:

ymd(20170131, tz = "UTC") #> [1] "2017-01-31 UTC"