读入晦涩的时间戳

read in obscure timestamps

我在名为 time 的列中有时间数据,格式为 H:M,如下所示:

1430 
1600 
1625 
1700 
1800 
2000
5
15 
200 
235 
400 
600 
800

然而,当时间在早上时,它只打印为一位数。当时间是午夜时,根本不打印。同样,如果小时是午夜且分钟小于 10,它只打印一个数字。

如何以 H:M 的形式阅读此内容?我试过:

time1 <- strptime(time,format = "%H%M")

但是 5 等时间戳被转换为 NA

您可以先使用sprintf功能:

data = data.frame(time = c(1430, 1600, 1625, 1700, 1800, 2000, 5, 15, 200, 235, 400, 600, 800))

data$time = sprintf("%04.f", as.numeric(data$time))
data$time = strptime(data$time ,format = "%H%M")

> print(data)
              time
1  2016-07-08 14:30:00
2  2016-07-08 16:00:00
3  2016-07-08 16:25:00
4  2016-07-08 17:00:00
5  2016-07-08 18:00:00
6  2016-07-08 20:00:00
7  2016-07-08 00:05:00
8  2016-07-08 00:15:00
9  2016-07-08 02:00:00
10 2016-07-08 02:35:00
11 2016-07-08 04:00:00
12 2016-07-08 06:00:00
13 2016-07-08 08:00:00