С dplyr
:
Tab1 <- structure(list(UserID = c(20L, 28L, 37L, 40L, 43L), X01.01.2019 = c(1L,
1L, 0L, 1L, 1L), X02.01.2019 = c(0L, 0L, 0L, 0L, 1L), X03.01.2019 = c(1L,
0L, 0L, 0L, 1L), X04.01.2019 = c(1L, 0L, 0L, 0L, 1L), X05.01.2019 = c(1L,
1L, 1L, 0L, 0L)), class = "data.frame", row.names = c(NA, -5L
))
library(tidyverse)
Tab2 <- Tab1 %>%
gather(Date,var,-UserID) %>%
filter(var==1) %>%
select(-var) %>%
mutate(Date=sub("X","",.$Date)) %>%
arrange(UserID)
Tab2
UserID Date
1 20 01.01.2019
2 20 03.01.2019
3 20 04.01.2019
4 20 05.01.2019
5 28 01.01.2019
6 28 05.01.2019
7 37 05.01.2019
8 40 01.01.2019
9 43 01.01.2019
10 43 02.01.2019
11 43 03.01.2019
12 43 04.01.2019