樣本資料集
df <- data.frame (dt1 = c("31.07.2022 23:57:06", "01.08.2022 00:02", "01.08.2022 00:07"),
factor = c(21.59,21.75,21.375))
Tworz? kolumn? z dat? i czasem
df <- df %>% mutate (DT = as.POSIXct(dt1, format="%d.%m.%Y %H:%M:%S"))
我得到以下結果:
dt1 factor DT
1 31.07.2022 23:57:06 21.590 2022-07-31 23:57:06
2 01.08.2022 00:02 21.750 <NA>
3 01.08.2022 00:07 21.375 <NA>
我希望最終結果如下
dt1 factor DT
1 31.07.2022 23:57:06 21.590 2022-07-31 23:57:06
2 01.08.2022 00:02 21.750 01.08.2022 00:02:00
3 01.08.2022 00:07 21.375 01.08.2022 00:07:00
不想浪費自己掌握的資訊,所以秒刪解決方案不好
df <- df %>% mutate (DT = as.POSIXct(dt1, format="%d.%m.%Y %H:%M"))
dt1 factor DT
1 31.07.2022 23:57:06 21.590 2022-07-31 23:57:00
2 01.08.2022 00:02 21.750 2022-08-01 00:02:00
3 01.08.2022 00:07 21.375 2022-08-01 00:07:00
uj5u.com熱心網友回復:
您可以使用lubridate::dmy_hmswithtruncated = 1來處理不完整的日期:
library(lubridate)
df %>%
mutate(DT = dmy_hms(dt1, truncated = 1))
# dt1 factor DT
# 1 31.07.2022 23:57:06 21.590 2022-07-31 23:57:06
# 2 01.08.2022 00:02 21.750 2022-08-01 00:02:00
# 3 01.08.2022 00:07 21.375 2022-08-01 00:07:00
查看truncated引數的詳細資訊:
日期時間資料中最常見的不規則型別是由于四舍五入或時間戳不可用而導致的截斷。如果截斷引數不為零,則 ymd_hms() 函式還會檢查截斷格式。例如,帶有 truncated = 3 的 ymd_hms() 也會決議不完整的日期,例如 ?2012-06-01 12:23?、?2012-06-01 12?和 2012-06-01。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/512101.html
標籤:r约会时间
