如何解决如何在R栏中的日期中添加午夜时间戳记?
我在R数据框中有一列日期,看起来像这样,
Date
2020-08-05
2020-08-05
2020-08-05
2020-08-07
2020-08-08
2020-08-08
因此日期格式为“ yyyy-mm-dd”。
我正在将此数据帧写入需要以非常特定的方式格式化的CSV。我需要将这些日期转换为格式“ mm / dd / yyyy hh:mm:ss”,所以这就是我希望这些列看起来像的样子:
Date
8/5/2020 12:00:00 AM
8/5/2020 12:00:00 AM
8/5/2020 12:00:00 AM
8/7/2020 12:00:00 AM
8/8/2020 12:00:00 AM
8/8/2020 12:00:00 AM
日期没有开头的时间戳,因此所有日期都需要采用上述格式的午夜时间戳。
昨天我花了很多时间试图强制这种格式,但无法。我可以很容易地使用as.Date()将2020-08-05更改为8/5/2020,但是当我尝试添加午夜时间戳时就会出现问题。
如何为这些重新格式化的日期添加午夜时间戳记?
非常感谢您的帮助!
解决方法
您可以使用format
:
df <- data.frame(Date = as.Date(c("2020-08-05","2020-08-07")))
format(df$Date,"%d-%m-%Y 12:00:00 AM")
[1] "05-08-2020 12:00:00 AM" "07-08-2020 12:00:00 AM"
,
dat <- data.frame(
Date = as.Date("2020-08-05") + c(0,2,3,3)
)
dat[["Date"]] <- format(dat[["Date"]],"%m/%d/%Y %I:%M:%S %p")
dat[["Date"]] <- sub("([ap]m)$","\\U\\1",dat[["Date"]],perl = T)
dat
## Date
## 1 08/05/2020 12:00:00 AM
## 2 08/05/2020 12:00:00 AM
## 3 08/05/2020 12:00:00 AM
## 4 08/07/2020 12:00:00 AM
## 5 08/08/2020 12:00:00 AM
## 6 08/08/2020 12:00:00 AM
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。