使用 `parse_date_time()` 指定顺序
如果日期的顺序非常奇怪,比如 dym_msh,怎么办?这时就需要使用 parse_date_time()。parse_date_time() 需要一个额外参数 orders,用于指定日期各组成部分的顺序。
例如,要解析 "2010 September 20th",可以使用 parse_date_time("2010 September 20th", orders = "ymd"),这等价于上一练习中的 ymd() 函数。
parse_date_time() 的一个优点是可以使用更多格式字符。例如,A 指定星期名称,I 指定 12 小时制时间,p 指定 am/pm 标记,等等。完整列表请参见帮助页 ?parse_date_time。
另一个重要优点是,您可以提供一个由多个顺序组成的向量,从而解析可能使用多种格式的日期。
您将在本练习中进行尝试。
本练习是课程的一部分
在 R 中处理日期和时间
练习说明
x是一个更棘手的日期时间。请根据说明中的线索来解析x。two_orders含有两种不同的顺序,请将orders指定为c("mdy", "dmy")来同时解析。- 使用
orders = c("dOmY", "OmY", "Y")解析short_dates。对于没有指定月份或日期的条目,会发生什么?
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Specify an order string to parse x
x <- "Monday June 1st 2010 at 4pm"
___(x, orders = "___")
# Specify order to include both "mdy" and "dmy"
two_orders <- c("October 7, 2001", "October 13, 2002", "April 13, 2003",
"17 April 2005", "23 April 2017")
parse_date_time(two_orders, orders = ___)
# Specify order to include "dOmY", "OmY" and "Y"
short_dates <- c("11 December 1282", "May 1372", "1253")
parse_date_time(short_dates, orders = ___)