Вот мой фрейм данных:
TIME data sunrise sunset
<chr> <chr> <chr> <chr>
1 6:00 AM ddd 07:19:53 AM 04:41:13 PM
2 1:15 PM fff 07:19:53 AM 04:41:13 PM
3 01:00 AM rrrr 07:19:52 AM 04:42:08 PM
4 10:28 AM btv 07:19:52 AM 04:42:08 PM
5 11:45 AM gored 07:19:52 AM 04:42:08 PM
И я хочу создать новый столбец, чтобы указать, находится ли TIME
между sunrise
и sunset
.
Я подумал будет так же просто, как ifelse, но это не работает, и я думаю, что это из-за символов ...
df %>%
mutate(daylight = ifelse(between(TIME, sunrise,sunset) == TRUE,1,0))
Это должно выглядеть так:
TIME data sunrise sunset daylight
<chr> <chr> <chr> <chr>
1 6:00 AM ddd 07:19:53 AM 04:41:13 PM 0
2 1:15 PM fff 07:19:53 AM 04:41:13 PM 1
3 01:00 AM rrrr 07:19:52 AM 04:42:08 PM 0
4 10:28 AM btv 07:19:52 AM 04:42:08 PM 1
5 11:45 AM gored 07:19:52 AM 04:42:08 PM 1
DATA
df <- structure(list(TIME = c("6:00 AM", "1:15 PM", "1:00 AM", "10:28 AM",
"11:45 AM"), sunrise = c("07:19:53 AM", "07:19:53 AM", "07:19:52 AM",
"07:19:52 AM", "07:19:52 AM"), sunset = c("04:41:13 PM", "04:41:13 PM",
"04:42:08 PM", "04:42:08 PM", "04:42:08 PM")), row.names = c(NA,
-5L), groups = structure(list(.rows = structure(list(1L, 2L,
3L, 4L, 5L), ptype = integer(0), class = c("vctrs_list_of",
"vctrs_vctr", "list"))), row.names = c(NA, -5L), class = c("tbl_df",
"tbl", "data.frame")), class = c("rowwise_df", "tbl_df", "tbl",
"data.frame"))