r - 如何用 r 中的 00 分钟和 00 秒解析日期和时间?
问题描述
我有一个大型数据集,其中日期和时间为 16 位(格式为yyyymmddhhmmssss
or 2005031600003000
)字符串。
我编写了以下解析命令(从字符串中删除最后 2 位数字):
DATA[, 1 ] <- substr(DATA[, 1 ], 1, 14)
DATA[, 1 ] <- ymd_hms(DATA[, 1 ], quiet = FALSE)
解析工作正常,除了 00 分钟和 00 秒(例如2005030507000000
)无法解析的时间。
有解决这个问题的方法吗?parse_date_time
命令有完全相同的问题。
解决方案
尝试as.POSIXct
将最后两个零传递给格式化
x <- c("2005031600003000", "2005030507000000")
as.POSIXct(x, format = "%Y%m%d%H%M%S00")
# [1] "2005-03-16 00:00:30 CET" "2005-03-05 07:00:00 CET"
从?strptime
%H : 小时为十进制数 (00–23) ...
%M : 分钟为十进制数 (00–59)
%S : 秒为整数 (00–61) ...
推荐阅读
- typescript - TypeScript 泛型类型的泛型类型
- java - 等待一个线程的Future时线程是否会继续执行
- java - Intellij IDEA:仅在方法上方没有字段时才在方法周围添加新行
- hive - 如何使用 Hive 创建具有单个 hdfs 路径的 n 个外部表
- jquery - scrollTop jquery,滚动到div不滚动?
- r - 我收到一条关于我的函数的“unexpected { in {”消息 - 看不到它在哪里或理解为什么该函数不起作用
- c# - AutoFixture:确保每个枚举元素至少使用一次
- git - docker-compose 无法从 TFS(Team Foundation Server)解析 Git URI
- jquery - 最大化和按下恢复按钮时刷新网站jquery
- ios - 从图库中选择的视频被镜像/翻转 ios swift