创建并格式化时间
与处理日期类似,您可以使用 as.POSIXct() 将字符字符串转换为 POSIXct 对象,并使用 format() 将 POSIXct 对象转换为字符字符串。同样,您可以使用多种符号:
%H:以十进制表示的小时(00-23)%I:以十进制表示的小时(01-12)%M:以十进制表示的分钟%S:以十进制表示的秒%T:典型格式%H:%M:%S的简写%p:AM/PM 指示符
有关完整的转换符号列表,请在控制台中查看 strptime 文档:
?strptime
同样,as.POSIXct() 会使用默认格式来匹配字符字符串。本例中的默认格式为 %Y-%m-%d %H:%M:%S。本练习不考虑不同时区的差异。
本练习是课程的一部分
R 中级
练习说明
- 将表示时间戳的两个字符串
str1和str2转换为POSIXct对象,命名为time1和time2。 - 使用
format(),从time1创建仅包含分钟的字符串。 - 从
time2提取小时和分钟,格式为 "hours:minutes AM/PM"。请参考上方的说明文本以找到正确的转换符号!
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Definition of character strings representing times
str1 <- "May 23, '96 hours:23 minutes:01 seconds:45"
str2 <- "2012-3-12 14:23:08"
# Convert the strings to POSIXct objects: time1, time2
time1 <- as.POSIXct(str1, format = "%B %d, '%y hours:%H minutes:%M seconds:%S")
# Convert times to formatted strings