|
|
@@ -167,14 +167,31 @@ server <- shinyServer(function(input, output) |
|
|
|
db %>% |
|
|
|
tbl("trajectoires") %>% |
|
|
|
filter(Etudiant %in% listing) %>% |
|
|
|
select(-`Vœu`) %>% |
|
|
|
distinct %>% |
|
|
|
collect(n = Inf) %>% |
|
|
|
mutate(Date = timestamp %>% |
|
|
|
as.POSIXct, |
|
|
|
Etudiant = Etudiant %>% factor, |
|
|
|
Rang = if(Rang %>% is.character) Rang %>% str_replace("(\\d+)(/\\d+)?", "\\1") %>% as.numeric else Rang) -> listing |
|
|
|
|
|
|
|
listing %>% |
|
|
|
mutate(Rang = ifelse(Subdivision != input$Ville | Discipline != input$Spe, NA, Rang)) -> listing |
|
|
|
Rang = if(Rang %>% is.character) Rang %>% str_replace("(\\d+)(/\\d+)?", "\\1") %>% as.numeric else Rang) %>% |
|
|
|
mutate(Rang = ifelse(Subdivision != input$Ville | Discipline != input$Spe, -1, Rang)) %>% |
|
|
|
select(Date, Etudiant, Rang) %>% |
|
|
|
complete(Etudiant, Date) %>% |
|
|
|
by(.$Etudiant, function(df) |
|
|
|
{ |
|
|
|
which(df$Rang %>% is.na & !lead(df$Rang) %>% is.na) -> chg |
|
|
|
which(!df$Rang %>% is.na & lead(df$Rang) %>% is.na) -> chg2 |
|
|
|
|
|
|
|
df$Rang[setdiff(chg, 1)] <- df$Rang[chg2] |
|
|
|
if (last(df$Rang) %>% is.na) |
|
|
|
df$Rang[length(df$Rang)] <- na.omit(df$Rang)[length(na.omit(df$Rang))] |
|
|
|
|
|
|
|
df %>% |
|
|
|
filter(!Rang %>% is.na) %>% |
|
|
|
mutate(Rang = ifelse(Rang == -1, NA, Rang)) |
|
|
|
}) %>% |
|
|
|
Reduce(f = bind_rows) %>% |
|
|
|
select(Date, Etudiant, Rang) -> listing |
|
|
|
|
|
|
|
if (input$Select == "étudiant") |
|
|
|
ggplot() |
|
|
|