Дата в другом формате: проблема со временем в R - PullRequest
0 голосов
/ 29 октября 2018

У меня есть такие даты:

dates <- c("2018-09-01 00:48:30","2018-09-01 01:34:20", "2018-09-01 01:56:28", "2018-09-01 00:06:31", "2018-09-01 01:24:30", "2018-09-01 00:54:31") 

в формате chr. Я хотел бы получить дд / мм / гг чч: мм: сс. Поэтому я попытался

dates_2  <-as.character(as.Date(dates, "%Y-%m-%d %H:%M:%S"), "%d/%m/%Y %H:%M:%S") 

Но результат

c("01/09/2018 00:00:00", "01/09/2018 00:00:00", "01/09/2018 00:00:00", 
"01/09/2018 00:00:00", "01/09/2018 00:00:00", "01/09/2018 00:00:00"

Где чч: мм: сс не прошло ... Есть идеи почему?

Спасибо!

1 Ответ

0 голосов
/ 29 октября 2018

Тип даты Base R не включает время. Один из вариантов - использовать strptime, чтобы сначала преобразовать время текстовой даты в POSIXlt, используя соответствующую маску формата. Затем преобразуйте обратно в строку вывода, используя strftime, снова используя нужную маску.

x <- strptime(dates, format="%Y-%m-%d %H:%M:%S")
output <- strftime(x, format="%d/%m/%Y %H:%M:%S")

[1] "01/09/2018 00:48:30" "01/09/2018 01:34:20" "01/09/2018 01:56:28"
[4] "01/09/2018 00:06:31" "01/09/2018 01:24:30" "01/09/2018 00:54:31"
...