У меня есть почасовой временной ряд даты-времени, отформатированный как «% Y-% m-% d% H:% M:% S» и как класс «символ».Цель состоит в том, чтобы преобразовать символьные данные в дату и время, используя as.POSIXct.Однако в некоторых записях во временном ряду отсутствует часть времени («% H:% M:% S»), хотя количество записей на дату (24) является правильным.
Возможно ли заполнитьво временной части этих записей с последовательностью часов, начинающейся с 00:00:00 и заканчивающейся 23:00:00 для каждой даты?
Исходный набор данных:
Date_time
...
1991-03-31 21:00:00
1991-03-31 22:00:00
1991-03-31 23:00:00
1991-04-01
1991-04-01
1991-04-01
...
Что я хочу:
Date_time
...
1991-03-31 21:00:00
1991-03-31 22:00:00
1991-03-31 23:00:00
1991-04-01 00:00:00
1991-04-01 01:00:00
1991-04-01 02:00:00
...
Самое близкое, что я получил, этоОбходной путь пока еще в символьном формате, но результат начинается в 16:00:00.Plz отправить Halp.
hours=c("00:00:00", "01:00:00", "02:00:00", "03:00:00", "04:00:00", "05:00:00", "06:00:00", "07:00:00", "08:00:00", "09:00:00", "10:00:00", "11:00:00", "12:00:00","13:00:00", "14:00:00", "15:00:00", "16:00:00", "17:00:00", "18:00:00", "19:00:00", "20:00:00","21:00:00", "22:00:00", "23:00:00")
Dataset %>%
mutate(Date_time_filled = ifelse(nchar(as.character(Date_time))<19,
paste(Date_time, hours),
paste(Date_time)))
Что я получил (неправильно):
Date_time
...
1991-03-31 21:00:00
1991-03-31 22:00:00
1991-03-31 23:00:00
1991-04-01 16:00:00
1991-04-01 17:00:00
1991-04-01 18:00:00
...
РЕДАКТИРОВАТЬ:
X metadata.id metadata.name metadata.lat metadata.lon Date_time data.v data.s data.f
1 1 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 01:00:00 NA NA 1,1
2 2 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 02:00:00 NA NA 1,1
3 3 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 03:00:00 NA NA 1,1
4 4 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 04:00:00 NA NA 1,1
5 5 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 05:00:00 NA NA 1,1
6 6 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 06:00:00 NA NA 1,1
7 7 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 07:00:00 NA NA 1,1
8 8 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 08:00:00 NA NA 1,1
9 9 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 09:00:00 NA NA 1,1
10 10 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 10:00:00 NA NA 1,1
11 11 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 11:00:00 NA NA 1,1
12 12 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 12:00:00 NA NA 1,1
13 13 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 13:00:00 NA NA 1,1
14 14 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 14:00:00 NA NA 1,1
15 15 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 15:00:00 NA NA 1,1
16 16 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 16:00:00 NA NA 1,1
17 17 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 17:00:00 NA NA 1,1
18 18 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 18:00:00 NA NA 1,1
19 19 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 19:00:00 NA NA 1,1
20 20 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 20:00:00 NA NA 1,1
21 21 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 21:00:00 NA NA 1,1
22 22 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 22:00:00 NA NA 1,1
23 23 9411340 Santa Barbara 34.4031 -119.6928 1990-10-22 23:00:00 NA NA 1,1
24 24 9411340 Santa Barbara 34.4031 -119.6928 1990-10-23 00:00:00 NA NA 1,1
25 25 9411340 Santa Barbara 34.4031 -119.6928 1990-10-23 01:00:00 NA NA 1,1