【问题标题】:From character to dates-time in R using decimal hours使用十进制小时从 R 中的字符到日期时间
【发布时间】:2020-01-14 15:28:35
【问题描述】:

我正在尝试将字符转换为 R 中的日期。

我的数据格式如下:

df <- data.frame(Date = c("23Jul2019 11:51:09 AM","23Jul2019 11:53:09 AM","19Jul2019 2:30:06 PM","01Aug2019 3:00:17 PM"))

根据此处找到的解决方案: Convert character to Date in R

我可以使用

> as.Date(df$Date, "%d/%b/%Y %I:%M:%S %p") 
[1] NA NA NA NA

%I 用于十进制小时 (12h) 和 %p 特定于区域设置的 AM/PM (https://www.stat.berkeley.edu/~s133/dates.html),但由于某种原因,它返回 NA。

我的目标是在将字符格式的日期转换为 R 中的日期后,按日期和时间对数据框的行进行排序。

我使用的代码有什么问题?

【问题讨论】:

  • 试试这个:anytime::anydate(df$Date)
  • 它可以获取日期但不能获取时间
  • 您的格式需要与您的数据中实际拥有的内容相匹配。您的日期不是用"%d/%b/%Y" 写的,而是用"%d%b%Y" 写的
  • 另外,as.Date 用于日期,而不是日期时间。你想要一个 POSIX,而不是 Date 对象
  • 试试as.POSIXct(df$Date, format = "%d%b%Y %H:%M:%S %p") 你的格式有几个错误。分隔斜线,您将小时定义为 %I 而不是 %H

标签: r date time data-conversion


【解决方案1】:

这应该可以解决

library(tidyverse)
library(lubridate)
#> 
#> Attaching package: 'lubridate'
#> The following object is masked from 'package:base':
#> 
#>     date
df <- data.frame(Date = c("23Jul2019 11:51:09 AM","23Jul2019 11:53:09 AM","19Jul2019 2:30:06 PM","01Aug2019 3:00:17 PM"))

df %>% 
  mutate(r_date_time = Date %>% dmy_hms)
#>                    Date         r_date_time
#> 1 23Jul2019 11:51:09 AM 2019-07-23 11:51:09
#> 2 23Jul2019 11:53:09 AM 2019-07-23 11:53:09
#> 3  19Jul2019 2:30:06 PM 2019-07-19 14:30:06
#> 4  01Aug2019 3:00:17 PM 2019-08-01 15:00:17

dmy_hms(df$Date) 
#> [1] "2019-07-23 11:51:09 UTC" "2019-07-23 11:53:09 UTC"
#> [3] "2019-07-19 14:30:06 UTC" "2019-08-01 15:00:17 UTC"

reprex package (v0.3.0) 于 2020 年 1 月 14 日创建

【讨论】:

  • 不幸的是我无法使用该功能:因为我无法安装和使用 tidyverse > library(tidyverse) 错误:loadNamespace(i, c( lib.loc, .libPaths()), versionCheck = vI[[i]]): 命名空间 'vctrs' 0.2.0 已经加载,但 >= 0.2.1 是必需的 > df %>% mutate(r_date_time = Date % >% dmy_hms) df %>% mutate(r_date_time = Date %>% dmy_hms) 中的错误:找不到函数“%>%”
  • 润滑就能解决你的核心问题
猜你喜欢
  • 2019-04-12
  • 1970-01-01
  • 2018-08-06
  • 1970-01-01
  • 1970-01-01
  • 2012-08-14
  • 1970-01-01
  • 2021-04-08
  • 2018-08-10
相关资源
最近更新 更多