Я пытался найти решение, но не смог найти его здесь.
Мне нужно создать новый столбец и пометить значения каждой строки этого нового столбца на основе столбца, который является форматом «Date.Time». Этот столбец Date.Time охватывает несколько дней, и я хочу пометить в новых значениях столбца как День 1, если значения находятся между определенными значениями date.time.
Day_1_start <- ymd_hms ("2018-07-02 00:00:00"),
Day_1_end <- ymd_hms ("2018-07-03 00:00:00")
Day_2_start <- ymd_hms ("2018-07-04 00:00:00")
Day_2_end <- ymd_hms ("2018-07-05 00:00:00")
interval_1 <- interval (Day_1_start, Day_1_end)
interval_2 <- interval (Day2_start, Day_2_end)
Если значение в столбце Date.Time находится в интервале_1, соответствующая метка в новом столбце - День 1 и т. Д.
Я пытался:
for (i in 1:file$Date.Time) {
if (file$Date.Time[i] == %within% interval_1) {
file$Day <- 1
}
}
Вышеупомянутый код не работает и является просто представлением псевдокода. Помогут ли мне участники сообщества R найти решение для этого?
Или это пример, где первый столбец имеет Date.Time, и я хочу создать второй столбец с именем Group, где все Date.Time между 13:30 и 13:40 будут помечены как 1, между 13:40 и 13 : 50 будет помечено 2 и т. Д.
Date.Time Group
5/7/18 13:30 1
5/7/18 13:31 1
5/7/18 13:32 1
5/7/18 13:33 1
5/7/18 13:34 1
5/7/18 13:35 1
5/7/18 13:36 1
5/7/18 13:37 1
5/7/18 13:38 1
5/7/18 13:39 1
5/7/18 13:40 2
5/7/18 13:41 2
5/7/18 13:42 2
5/7/18 13:43 2
5/7/18 13:44 2
5/7/18 13:45 2
5/7/18 13:46 2
5/7/18 13:47 2
5/7/18 13:48 2
5/7/18 13:49 2
5/7/18 13:50 3
5/7/18 13:51 3
5/7/18 13:52 3
5/7/18 13:53 3
5/7/18 13:54 3
5/7/18 13:55 3
5/7/18 13:56 3
5/7/18 13:57 3
5/7/18 13:58 3
5/7/18 13:59 3
Спасибо.