如何解决如何将字符串datetime列转换为R中的datetime列? 数据
这应该很简单,但是我找不到正确的语法。我有一个名为data的数据框,它有点像这样:
Id timestamp
A9 2020-08-10 09:05:01.000000
B9 2020-08-10 09:04:18.000000
G1 2020-04-15 11:05:08.000000
D2 2020-01-18 19:04:05.000000
F8 2020-02-12 08:04:08.000000
但是,列时间戳是一个字符串。如何转换为日期时间列?
我已经尝试过了:
data$timestamp_new <- as.Date(data$timestamp,format="%Y-%m-%dT%H:%M:%OS")
这:
data$timestamp_new <- as.POSIXct(data$timestamp,format="%Y-%m-%dT%H:%M:%OS")
两个都是回归国家
解决方法
我们可以只使用%T
as.Date(data$timestamp,"%Y-%m-%d %T")
#[1] "2020-08-10" "2020-08-10" "2020-04-15" "2020-01-18" "2020-02-12"
数据
data <- structure(list(Id = c("A9","B9","G1","D2","F8"),timestamp = c("2020-08-10 09:05:01.000000","2020-08-10 09:04:18.000000","2020-04-15 11:05:08.000000","2020-01-18 19:04:05.000000","2020-02-12 08:04:08.000000")),class = "data.frame",row.names = c(NA,-5L))
,
您可以使用ymd_hms
中的lubridate
lubridate::ymd_hms(data$timestamp)
#[1] "2020-08-10 09:05:01 UTC" "2020-08-10 09:04:18 UTC" "2020-04-15 11:05:08 UTC"
#[4] "2020-01-18 19:04:05 UTC" "2020-02-12 08:04:08 UTC"
如果您只对日期感兴趣,可以将as.Date
包装到上面的结果中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。