Я пытаюсь визуализировать склонность учащихся разных программ старших классов бросать учебу в университете. Мне удалось получить очень хорошую визуализацию их процента в группе, чтобы остаться в программе, бросить поздно или бросить рано.
Я пишу:
fulldata %>%
as_tibble() %>%
group_by(gymnasiegrov, totstatus_tri) %>%
summarise(antal = n()) %>%
mutate(andel = antal / sum(antal))%>%
ggplot(.) +
geom_col(mapping = aes(x = gymnasiegrov, y = andel)) +
coord_flip() +
facet_wrap(~totstatus_tri)
И я получаю:

Это действительно здорово, но для полноты картины я бы хотел отсортировать группы в зависимости от убывающих значений в первом фасете. Я, конечно, могу определить «гимназигров» как фактор и изменить порядок уровней факторов вручную, но это первый из «многих» анализов, и это быстро станет утомительным.
Я попытался создать таблицу, отсортировать ее в зависимости от относительной частоты, а затем использовать отсортированный вектор в качестве уровней факторов в моем первом наборе данных. Затем эту процедуру можно повторить для каждой новой популяции. К сожалению, это не похоже на работу:
#creating table#
vettig_tabell<-table(fulldata$gymnasiegrov,fulldata$totstatus_tri)
vettig_tabell<-as.data.frame(vettig_tabell)
vettig_tabell<-spread(vettig_tabell, Var2, Freq)
vettig_tabell<-vettig_tabell%>%mutate(ongoing=`pågående studier`/(`pågående studier` + `tidigt avbrott eller återbud` + `troligt avbrott`))
#sorting by relative frequency#
vettig_tabell<-vettig_tabell%>%arrange(ongoing)
#Trying to use order of programmes sorted on relative frequency as factor levels#
fulldata$gymnasiegrov<-factor(fulldata$gymnasiegrov, levels=vettig_tabell$Var2, ordered=TRUE)
...... По какой-то причине это превращает все мои ценности в NA.
Есть идеи?
Снимок данных (только соответствующие переменные)
structure(list(gymnasiegrov = c("Hotell- och Restaurang", NA,
"specialutformat program", "komvux", NA, "bygg, el, fordon, hantverk, sjöfart, industriteknik",
"estetiska programmet", "komvux", "naturvetenskapliga programmet",
NA, "specialutformat program", "estetiska programmet", "medieprogrammet/medieproduktion",
"specialutformat program", "specialutformat program", "komvux",
"estetiska programmet", "samhällsvetenskapliga programmet", "specialutformat program",
"friskoleprogram", "teknikprogrammet", "specialutformat program",
"teknikprogrammet", "Handels- och administrationsprogrammet",
"Hotell- och Restaurang", "samhällsvetenskapliga programmet",
"samhälls- och ekonomiprogrammet", "specialutformat program",
"komvux", "specialutformat program", "specialutformat program",
"bygg, el, fordon, hantverk, sjöfart, industriteknik", "komvux",
"Handels- och administrationsprogrammet", "teknikprogrammet",
"teknikprogrammet", "friskoleprogram", "specialutformat program",
"naturvetenskapliga programmet", "naturvetenskapliga programmet",
"samhällsvetenskapliga programmet", "ekonomiprogrammet/ ekonomi",
"samhällsvetenskapliga programmet", "samhällsvetenskapliga programmet",
"Hotell- och Restaurang", "specialutformat program", "samhällsvetenskapliga programmet",
"ekonomiprogrammet/ ekonomi", "bygg, el, fordon, hantverk, sjöfart, industriteknik",
"ekonomiprogrammet/ ekonomi", "komvux", "bygg, el, fordon, hantverk, sjöfart, industriteknik",
"estetiska programmet", "estetiska programmet", "samhällsvetenskapliga programmet",
"ekonomiprogrammet/ ekonomi", "naturvetenskapliga programmet",
"ekonomiprogrammet/ ekonomi", "bygg, el, fordon, hantverk, sjöfart, industriteknik",
"ekonomiprogrammet/ ekonomi", "bygg, el, fordon, hantverk, sjöfart, industriteknik",
"ekonomiprogrammet/ ekonomi", "bygg, el, fordon, hantverk, sjöfart, industriteknik",
"naturvetenskapliga programmet", "Handels- och administrationsprogrammet",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "bygg, el, fordon, hantverk, sjöfart, industriteknik",
"bygg, el, fordon, hantverk, sjöfart, industriteknik", "ekonomiprogrammet/ juridik",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ juridik", "ekonomiprogrammet/ ekonomi",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "bygg, el, fordon, hantverk, sjöfart, industriteknik",
"ekonomiprogrammet/ ekonomi", "Handels- och administrationsprogrammet",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "estetiska programmet",
"ekonomiprogrammet/ ekonomi", "teknikprogrammet", "samhällsvetenskapliga programmet",
"naturvetenskapliga programmet", "naturvetenskapliga programmet",
"teknikprogrammet", "ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "samhällsvetenskapliga programmet",
"samhällsvetenskapliga programmet", "naturvetenskapliga programmet",
"ekonomiprogrammet/ juridik", "ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ juridik",
"samhällsvetenskapliga programmet", "ekonomiprogrammet/ ekonomi",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi",
"samhällsvetenskapliga programmet", "samhällsvetenskapliga programmet",
"samhällsvetenskapliga programmet", "ekonomiprogrammet/ juridik",
"teknikprogrammet", "teknikprogrammet", "ekonomiprogrammet/ ekonomi",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi",
"ekonomiprogrammet/ ekonomi", "naturvetenskapliga programmet",
"naturvetenskapliga programmet", "ekonomiprogrammet/ ekonomi",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "naturvetenskapliga programmet",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ juridik",
"teknikprogrammet", "ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi",
"ekonomiprogrammet/ ekonomi", "naturvetenskapliga programmet",
"ekonomiprogrammet/ juridik", "naturvetenskapliga programmet",
"teknikprogrammet", "ekonomiprogrammet/ juridik", "ekonomiprogrammet/ ekonomi",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi",
"samhällsvetenskapliga programmet", "ekonomiprogrammet/ ekonomi",
"samhällsvetenskapliga programmet", "estetiska programmet", "ekonomiprogrammet/ ekonomi",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ juridik",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ ekonomi", "teknikprogrammet",
"naturvetenskapliga programmet", "ekonomiprogrammet/ ekonomi",
"ekonomiprogrammet/ ekonomi", "ekonomiprogrammet/ juridik", "ekonomiprogrammet/ ekonomi",
NA, NA, NA, NA, NA, NA, NA, NA), totstatus_bin = c("troligt avbrott eller återbud",
"troligt avbrott eller återbud", "pågående studier", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "pågående studier", "pågående studier",
"pågående studier", "pågående studier", "pågående studier", "pågående studier",
"troligt avbrott eller återbud", "troligt avbrott eller återbud",
"pågående studier", "troligt avbrott eller återbud", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "pågående studier", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "pågående studier", "pågående studier",
"pågående studier", "pågående studier", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "pågående studier", "pågående studier",
"troligt avbrott eller återbud", "pågående studier", "pågående studier",
"troligt avbrott eller återbud", "pågående studier", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "pågående studier", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "troligt avbrott eller återbud", "pågående studier",
"pågående studier", "pågående studier", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "troligt avbrott eller återbud",
"pågående studier", "troligt avbrott eller återbud", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "pågående studier", "pågående studier",
"troligt avbrott eller återbud", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "pågående studier", "pågående studier",
"pågående studier", "pågående studier", "pågående studier", "pågående studier",
"pågående studier", "pågående studier", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "pågående studier", "pågående studier",
"pågående studier", "troligt avbrott eller återbud", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "troligt avbrott eller återbud", "pågående studier",
"pågående studier", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "troligt avbrott eller återbud", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "pågående studier", "pågående studier",
"pågående studier", "troligt avbrott eller återbud", "pågående studier",
"troligt avbrott eller återbud", "pågående studier", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "pågående studier", "pågående studier",
"pågående studier", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "pågående studier", "pågående studier",
"pågående studier", "pågående studier", "pågående studier", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "pågående studier", "pågående studier",
"troligt avbrott eller återbud", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "pågående studier", "troligt avbrott eller återbud",
"troligt avbrott eller återbud", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "troligt avbrott eller återbud",
"pågående studier", "pågående studier", "pågående studier", "pågående studier",
"troligt avbrott eller återbud", "pågående studier", "pågående studier",
"pågående studier")), row.names = c(NA, -162L), class = "data.frame")