From e95e62099631ebeeeec4aa11e1f1d1a31cda1660 Mon Sep 17 00:00:00 2001 From: mkleemeyer Date: Wed, 27 Oct 2021 13:37:35 +0200 Subject: [PATCH 1/4] moved table tot top --- generate_report.Rmd | 45 ++++++++++++++++++++++++++++++++++++--------- 1 file changed, 36 insertions(+), 9 deletions(-) diff --git a/generate_report.Rmd b/generate_report.Rmd index 116f499..8826970 100644 --- a/generate_report.Rmd +++ b/generate_report.Rmd @@ -20,6 +20,38 @@ library(corrr) library(umx) library(matrixStats) ``` + +# Prozente für Mobbing, Diskriminierung und Belästigung mehr als "nie" +```{r echo = FALSE, results='asis'} +D12 <- as.data.frame(table(responses$D12, useNA = "ifany")) %>% + mutate(per = 100*Freq/sum(Freq)) +D12_reduced <- D12 %>% + filter(Var1 != "Nie" & Var1 != "Keine Antwort" ) + +D12_notnever <- summarise_all(D12_reduced, ~if(is.numeric(.)) sum(.) else "Mobbing") + +E05 <- as.data.frame(table(responses$E05, useNA = "ifany")) %>% + mutate(per = 100*Freq/sum(Freq)) +E05_reduced <- E05 %>% + filter(Var1 != "Nie" & Var1 != "Keine Antwort" ) + +E05_notnever <- summarise_all(E05_reduced, ~if(is.numeric(.)) sum(.) else "Diskriminierung") + +F11 <- as.data.frame(table(responses$F11, useNA = "ifany")) %>% + mutate(per = 100*Freq/sum(Freq)) + +F11_reduced <- F11 %>% + filter(Var1 != "Nie" & Var1 != "Keine Antwort" ) + +F11_notnever <- summarise_all(F11_reduced, ~if(is.numeric(.)) sum(.) else "Belästigung") + +all_notnever <- rbind(D12_notnever,E05_notnever, F11_notnever) +kable(all_notnever, col.names = c("Thema", "Häufigkeit", "Prozent"), + table.attr = "class=\"striped\"", format = "html") %>% + kable_material(c("striped", "hover")) + +``` + # Interne Skalenkonsistenz ## SKALA A: Gruppenatmosphäre @@ -426,32 +458,27 @@ kable(B14, col.names = c("Antwort", "Häufigkeit", "Prozent"), ### Wurden Sie selbst während der letzten 12 Monate gemobbt? ```{r echo = FALSE, results='asis'} -D12 <- as.data.frame(table(responses$D12, useNA = "ifany")) %>% - mutate(per = 100*Freq/sum(Freq)) - kable(D12, col.names = c("Antwort", "Häufigkeit", "Prozent"), table.attr = "class=\"striped\"", format = "html") %>% kable_material(c("striped", "hover")) + ``` ### Wurden Sie selbst während der letzten 12 Monate aufgrund Ihres Geschlechts diskriminiert? ```{r echo = FALSE, results='asis'} -E05 <- as.data.frame(table(responses$E05, useNA = "ifany")) %>% - mutate(per = 100*Freq/sum(Freq)) - kable(E05, col.names = c("Antwort", "Häufigkeit", "Prozent"), table.attr = "class=\"striped\"", format = "html") %>% kable_material(c("striped", "hover")) + + ``` ### Wurden Sie selbst während der letzten 12 Monate sexualisiert belästigt? ```{r echo = FALSE, results='asis'} -F11 <- as.data.frame(table(responses$F11, useNA = "ifany")) %>% - mutate(per = 100*Freq/sum(Freq)) - kable(F11, col.names = c("Antwort", "Häufigkeit", "Prozent"), table.attr = "class=\"striped\"", format = "html") %>% kable_material(c("striped", "hover")) + ``` ### Leben Kinder unter 18 Jahren in Ihrem Haushalt? -- GitLab From ce24cebab3006dd093c3b06d67aff2243bdaff10 Mon Sep 17 00:00:00 2001 From: mkleemeyer Date: Wed, 27 Oct 2021 15:07:15 +0200 Subject: [PATCH 2/4] Included scale means --- generate_report.Rmd | 79 ++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 74 insertions(+), 5 deletions(-) diff --git a/generate_report.Rmd b/generate_report.Rmd index 8826970..107c364 100644 --- a/generate_report.Rmd +++ b/generate_report.Rmd @@ -21,7 +21,9 @@ library(umx) library(matrixStats) ``` -# Prozente für Mobbing, Diskriminierung und Belästigung mehr als "nie" +# Erster Blick + +## Prozente für Mobbing, Diskriminierung und Belästigung mehr als "nie" ```{r echo = FALSE, results='asis'} D12 <- as.data.frame(table(responses$D12, useNA = "ifany")) %>% mutate(per = 100*Freq/sum(Freq)) @@ -35,7 +37,7 @@ E05 <- as.data.frame(table(responses$E05, useNA = "ifany")) %>% E05_reduced <- E05 %>% filter(Var1 != "Nie" & Var1 != "Keine Antwort" ) -E05_notnever <- summarise_all(E05_reduced, ~if(is.numeric(.)) sum(.) else "Diskriminierung") +E05_notnever <- summarise_all(E05_reduced, ~if(is.numeric(.)) sum(.) else "Geschlechterbezogene Diskriminierung") F11 <- as.data.frame(table(responses$F11, useNA = "ifany")) %>% mutate(per = 100*Freq/sum(Freq)) @@ -43,10 +45,77 @@ F11 <- as.data.frame(table(responses$F11, useNA = "ifany")) %>% F11_reduced <- F11 %>% filter(Var1 != "Nie" & Var1 != "Keine Antwort" ) -F11_notnever <- summarise_all(F11_reduced, ~if(is.numeric(.)) sum(.) else "Belästigung") +F11_notnever <- summarise_all(F11_reduced, ~if(is.numeric(.)) sum(.) else "Sexualisierte Belästigung") + +mpg_percentage <- c(10, 8, 20) + + +all_notnever <- cbind(rbind(D12_notnever,E05_notnever, F11_notnever),mpg_percentage) +kable(all_notnever, col.names = c("Thema", "Häufigkeit", "Prozent", "MPG Wert"), + table.attr = "class=\"striped\"", format = "html") %>% + kable_material(c("striped", "hover")) + +``` + +## Skalen-Mittelwerte + +```{r echo = FALSE, results='asis'} +mean_A <- responses_coded %>% + select(A03:A05) %>% + colMeans(na.rm = TRUE) %>% + mean() %>% + set_names(c("mean")) + +mean_B1overlapMPG <- responses_coded %>% + select(B03:B06) %>% + colMeans(na.rm = TRUE) %>% + mean() %>% + set_names(c("mean")) + +mean_B2 <- responses_coded %>% + select(B09:B13) %>% + colMeans(na.rm = TRUE) %>% + mean() %>% + set_names(c("mean")) -all_notnever <- rbind(D12_notnever,E05_notnever, F11_notnever) -kable(all_notnever, col.names = c("Thema", "Häufigkeit", "Prozent"), +mean_C <- responses_coded %>% + select(C02:C04) %>% + colMeans(na.rm = TRUE) %>% + mean() %>% + set_names(c("mean")) + +mean_D <- responses_coded %>% + select(D02:D06) %>% + colMeans(na.rm = TRUE) %>% + mean() %>% + set_names(c("mean")) + +mean_F <- responses_coded %>% + select(F02:F08) %>% + colMeans(na.rm = TRUE) %>% + mean() %>% + set_names(c("mean")) + +mean_H3overlapMPG <- responses_coded %>% + select(H20:H21) %>% + colMeans(na.rm = TRUE) %>% + mean() %>% + set_names(c("mean")) + +mpg_means <- c(3.62, 3.67, 3.2, 3.69, 1.39, 1.05, 2.38) + +output_scalemeans <- as.data.frame(bind_cols(bind_rows(mean_A, + mean_B1overlapMPG, + mean_B2, + mean_C, + mean_D, + mean_F, + mean_H3overlapMPG),mpg_means)) + +rownames(output_scalemeans) <- c("Gruppenatmosphäre", "Führungsstil", "Karriereentwicklung", "Zufriedenheit mit Institut/Einrichtung", "Unkollegiales Verhalten", "Sexualisierte Belästigung", + "Elternzeit") + +kable(output_scalemeans, col.names = c("Aktueller Mittelwert", "MPG Mittelwert"), table.attr = "class=\"striped\"", format = "html") %>% kable_material(c("striped", "hover")) -- GitLab From 508e6c5cf31bc012437b5ece4da14e2c86976d60 Mon Sep 17 00:00:00 2001 From: mkleemeyer Date: Fri, 29 Oct 2021 18:04:39 +0200 Subject: [PATCH 3/4] Add value ranges, scale E and H --- generate_report.Rmd | 51 +++++++++++++++++++++++++++++++++++---------- 1 file changed, 40 insertions(+), 11 deletions(-) diff --git a/generate_report.Rmd b/generate_report.Rmd index 107c364..ce06c90 100644 --- a/generate_report.Rmd +++ b/generate_report.Rmd @@ -1,5 +1,5 @@ --- -title: "MPGQuestionnaireReport" +title: "MPGQuestionnaireReport MPI für XXX (bitte einfügen)" author: "Kleemeyer" date: "`r format(Sys.time(), '%d %B, %Y')`" output: @@ -23,7 +23,7 @@ library(matrixStats) # Erster Blick -## Prozente für Mobbing, Diskriminierung und Belästigung mehr als "nie" +## Prozente für Mobbing, Diskriminierung und Belästigung mindestens "gelegentlich" ```{r echo = FALSE, results='asis'} D12 <- as.data.frame(table(responses$D12, useNA = "ifany")) %>% mutate(per = 100*Freq/sum(Freq)) @@ -47,11 +47,18 @@ F11_reduced <- F11 %>% F11_notnever <- summarise_all(F11_reduced, ~if(is.numeric(.)) sum(.) else "Sexualisierte Belästigung") -mpg_percentage <- c(10, 8, 20) +H21 <- as.data.frame(table(responses$H21, useNA = "no")) %>% + mutate(per = 100*Freq/sum(Freq)) +H21_reduced <- H21 %>% + filter(Var1 != "Stimme nicht zu" & Var1 != "Keine Antwort" ) + +H21_notnever <- summarise_all(H21_reduced, ~if(is.numeric(.)) sum(.) else "Nachteile wegen Elternzeit") + +mpg_percentage <- c(10, 8, 'x', 16) -all_notnever <- cbind(rbind(D12_notnever,E05_notnever, F11_notnever),mpg_percentage) -kable(all_notnever, col.names = c("Thema", "Häufigkeit", "Prozent", "MPG Wert"), +all_notnever <- cbind(rbind(D12_notnever,E05_notnever, F11_notnever, H21_notnever),mpg_percentage) +kable(all_notnever, col.names = c("Thema", "Häufigkeit", "Prozent", "MPG 2019 %"), table.attr = "class=\"striped\"", format = "html") %>% kable_material(c("striped", "hover")) @@ -72,6 +79,12 @@ mean_B1overlapMPG <- responses_coded %>% mean() %>% set_names(c("mean")) +mean_B1 <- responses_coded %>% + select(B02:B07) %>% + colMeans(na.rm = TRUE) %>% + mean() %>% + set_names(c("mean")) + mean_B2 <- responses_coded %>% select(B09:B13) %>% colMeans(na.rm = TRUE) %>% @@ -90,6 +103,12 @@ mean_D <- responses_coded %>% mean() %>% set_names(c("mean")) +mean_E <- responses_coded %>% + select(E04:E05) %>% + colMeans(na.rm = TRUE) %>% + mean() %>% + set_names(c("mean")) + mean_F <- responses_coded %>% select(F02:F08) %>% colMeans(na.rm = TRUE) %>% @@ -102,20 +121,30 @@ mean_H3overlapMPG <- responses_coded %>% mean() %>% set_names(c("mean")) -mpg_means <- c(3.62, 3.67, 3.2, 3.69, 1.39, 1.05, 2.38) +mean_H1 <- responses_coded %>% + select(H02:H06) %>% + mutate(H06 = recode(H06, "5" = 1, "4"=2, "2"=4, "1"=5)) %>% + colMeans(na.rm = TRUE) %>% + mean() %>% + set_names(c("mean")) + + +mpg_means <- c(3.62, 3.67, 'x', 3.2, 3.69, 1.39, 1.18, 1.05, 'x', 2.38) output_scalemeans <- as.data.frame(bind_cols(bind_rows(mean_A, mean_B1overlapMPG, + mean_B1, mean_B2, mean_C, mean_D, + mean_E, mean_F, + mean_H1, mean_H3overlapMPG),mpg_means)) -rownames(output_scalemeans) <- c("Gruppenatmosphäre", "Führungsstil", "Karriereentwicklung", "Zufriedenheit mit Institut/Einrichtung", "Unkollegiales Verhalten", "Sexualisierte Belästigung", - "Elternzeit") +rownames(output_scalemeans) <- c("Gruppenatmosphäre (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Führungsstil Überschneidung 2019 (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Führungsstil komplett (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Karriereentwicklung (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Zufriedenheit mit Institut/Einrichtung (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Unkollegiales Verhalten (Skala: 1 Nie - 5 Täglich, niedriger besser)", "Geschlechterbezogene Diskriminierung (Skala: 1 Nie - 5 Täglich, niedriger besser)", "Sexualisierte Belästigung (Skala: 1 Nie - 5 Täglich, niedriger besser)", "Vereinbarkeit (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, niedriger besser)", "Nachteile wegen Elternzeit Überschneidung 2019 (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, niedriger besser)") -kable(output_scalemeans, col.names = c("Aktueller Mittelwert", "MPG Mittelwert"), +kable(output_scalemeans, col.names = c("Aktueller Mittelwert", "Mittelwert MPG 2019"), table.attr = "class=\"striped\"", format = "html") %>% kable_material(c("striped", "hover")) @@ -398,7 +427,7 @@ Cronbach's alpha für Skala H1 ist `r rely_H1$total$std.alpha`. ## SKALA H2: Work-family Balance -* H07 und H08. Leben Kinder unter 18 Jahren in Ihrem Haushalt? / H3. Leben pflegebedürftige Personen in Ihrem Haushalt? (Nur wenn eine dieser Frage mit "ja" beantwortet wird, werden die folgenden drei Items gezeigt.) +* H07 und H08. Leben Kinder unter 18 Jahren in Ihrem Haushalt? / H3. Leben pflegebedürftige Personen in Ihrem Haushalt? (Nur wenn eine dieser Frage mit "ja" beantwortet wird, werden die folgenden fünf Items gezeigt.) * H2. Stimmen Sie den folgenden Aussagen zu? + H09. Meine direkte Führungskraft berücksichtigt meine familiären Verpflichtungen bei der Arbeitsorganisation und Terminplanung. + H10. Meine direkte Führungskraft unterstützt mich bei der Lösung konkreter Probleme der Vereinbarkeit von Familie und Beruf. @@ -432,7 +461,7 @@ Cronbach's alpha für Skala H2 ist `r rely_H2$total$std.alpha`. ## SKALA H3: Elternzeit - ja -* H07. Leben Kinder unter 18 Jahren in Ihrem Haushalt? (Nur wenn diese Frage mit "ja" beantwortet wird, werden die folgenden drei Items gezeigt.) +* H07. Leben Kinder unter 18 Jahren in Ihrem Haushalt? (Nur wenn diese Frage mit "ja" beantwortet wird, kommt:) * H14. Haben Sie während Ihrer Zeit bei der Max-Planck-Gesellschaft Elternzeit genommen? (Nur wenn diese Frage mit "ja" beantwortet wird, werden die folgenden fünf Items gezeigt.) * H3. Stimmen Sie den folgenden Aussagen zu? + H17. Meine direkte Führungskraft unterstützte mich dabei, meine Elternzeit im Voraus zu planen. -- GitLab From e5f7ab96fc2acb6769b8b498b24cae09c947eb08 Mon Sep 17 00:00:00 2001 From: mkleemeyer Date: Wed, 3 Nov 2021 11:15:28 +0100 Subject: [PATCH 4/4] Insert linebreaks in rownames for mean table --- generate_report.Rmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generate_report.Rmd b/generate_report.Rmd index ce06c90..6967b69 100644 --- a/generate_report.Rmd +++ b/generate_report.Rmd @@ -142,7 +142,7 @@ output_scalemeans <- as.data.frame(bind_cols(bind_rows(mean_A, mean_H1, mean_H3overlapMPG),mpg_means)) -rownames(output_scalemeans) <- c("Gruppenatmosphäre (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Führungsstil Überschneidung 2019 (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Führungsstil komplett (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Karriereentwicklung (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Zufriedenheit mit Institut/Einrichtung (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Unkollegiales Verhalten (Skala: 1 Nie - 5 Täglich, niedriger besser)", "Geschlechterbezogene Diskriminierung (Skala: 1 Nie - 5 Täglich, niedriger besser)", "Sexualisierte Belästigung (Skala: 1 Nie - 5 Täglich, niedriger besser)", "Vereinbarkeit (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, niedriger besser)", "Nachteile wegen Elternzeit Überschneidung 2019 (Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, niedriger besser)") +rownames(output_scalemeans) <- c("Gruppenatmosphäre \\\n(Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Führungsstil Überschneidung 2019 \\\n(Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Führungsstil komplett \\\n(Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Karriereentwicklung \\\n(Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Zufriedenheit mit Institut/Einrichtung \\\n(Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, höher besser)", "Unkollegiales Verhalten \\\n(Skala: 1 Nie - 5 Täglich, niedriger besser)", "Geschlechterbezogene Diskriminierung \\\n(Skala: 1 Nie - 5 Täglich, niedriger besser)", "Sexualisierte Belästigung \\\n(Skala: 1 Nie - 5 Täglich, niedriger besser)", "Vereinbarkeit \\\n(Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, niedriger besser)", "Nachteile wegen Elternzeit Überschneidung 2019 \\\n(Skala: 1 Stimme überhaupt nicht zu - 5 Stimme voll und ganz zu, niedriger besser)") kable(output_scalemeans, col.names = c("Aktueller Mittelwert", "Mittelwert MPG 2019"), table.attr = "class=\"striped\"", format = "html") %>% -- GitLab