Хотел бы отформатировать символ времени, добавив нули в нужном месте, чтобы отформатировать стандарт 00:00:00 с помощью R

#r #time

Вопрос:

Например, у меня есть строка, содержащая такие временные символы, как

 Time<-c("1:00","15:09","1:06","23:13")
 

Я хочу превратить их в h:m:s

 Time<-c("01:00:00","15:09:00","01:06:00","23:13:00")
 

Есть ли способ сделать это, чтобы я добавил нули в нужное место, а также отметил, что в оригинале нет секунд, поэтому секунды будут считываться как нули.

Ответ №1:

as.ITime От data.table действительно добавляет секунды

 library(data.table)
as.ITime(Time)
#[1] "01:00:00" "15:09:00" "01:06:00" "23:13:00"
 

Или в base R с as.POSIXct и format

 format(as.POSIXct(Time, format = '%H:%M'), '%H:%M:%S')
#[1] "01:00:00" "15:09:00" "01:06:00" "23:13:00"
 

Комментарии:

1. вау, я не ожидал, что все будет так просто. Спасибо.