From 25e500e5fc88601e66d115c9741c46a76d423a6c Mon Sep 17 00:00:00 2001 From: DorienHuijser Date: Fri, 2 Feb 2024 15:52:47 +0100 Subject: [PATCH 1/4] remove feb 1 row to prevent duplicate --- data/processed/nr_participants.csv | 1 - 1 file changed, 1 deletion(-) diff --git a/data/processed/nr_participants.csv b/data/processed/nr_participants.csv index 849484e..6227eb9 100644 --- a/data/processed/nr_participants.csv +++ b/data/processed/nr_participants.csv @@ -12,4 +12,3 @@ 2023-11-09,77,56,8,13 2023-12-01,87,62,12,13 2024-01-08,94,68,13,13 -2024-02-01,107,75,17,15 From caca7e5fb66ebe1b5e0320e23a0ff86007850cb8 Mon Sep 17 00:00:00 2001 From: DorienHuijser Date: Fri, 2 Feb 2024 15:53:09 +0100 Subject: [PATCH 2/4] start integrating faculty info --- PBfR_stats.qmd | 58 +++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 45 insertions(+), 13 deletions(-) diff --git a/PBfR_stats.qmd b/PBfR_stats.qmd index fd70a15..bdfd794 100644 --- a/PBfR_stats.qmd +++ b/PBfR_stats.qmd @@ -1,5 +1,9 @@ ## About +TODO: +- instead of UU/Student/External, take faculties as grouping variable in all graphs +- Write to new files + In this report, you'll find some data on the usage of the online training "Privacy Basics for Researchers". This online module was created by Research Data Management Support at Utrecht University (NL) to provide a researcher-friendly introduction into the General Data Protection Regulation (GDPR), with a focus on how it applies to scientific research performed at Utrecht University (UU). A description of and a registration link to the online module can be found on the [RDM Support website](https://www.uu.nl/en/research/research-data-management/walk-in-hours-workshops/privacy-basics-online-training). The module is embedded within the Utrecht University Moodle platform, "ULearning", but the raw module materials are also available [online via Zenodo](https://doi.org/10.5281/zenodo.7930571). @@ -159,23 +163,39 @@ quiz_2 <- quiz %>% semi_join(select(participants_2, #| code-summary: "Code to calculate the number of participants" # Calculate nr of participants of most recent download -new_row <- list(date = date, - total = dim(participants_2)[1], - uu = sum(grepl("@uu.nl$", - participants_2$Email.address)), - uu_students = sum(grepl("@students.uu.nl$", - participants_2$Email.address)), - - # other = total - uu - students - other = dim(participants_2)[1] - - sum(grepl("@uu.nl$", participants_2$Email.address)) - - sum(grepl("@students.uu.nl$", participants_2$Email.address))) +new_row <- data.frame(date = date, + total = dim(participants_2)[1], + uu = sum(grepl("@uu.nl$", + participants_2$Email.address)), + uu_students = sum(grepl("@students.uu.nl$", + participants_2$Email.address)), + + # other = total - uu - students + other = dim(participants_2)[1] - + sum(grepl("@uu.nl$", participants_2$Email.address)) - + sum(grepl("@students.uu.nl$", participants_2$Email.address)), + + # Faculties + DGK = sum(participants_2$Groups=="DGK"), + REBO = sum(participants_2$Groups=="REBO"), + FSW = sum(participants_2$Groups=="FSW"), + GEO = sum(participants_2$Groups=="GEO"), + GW = sum(participants_2$Groups=="GW"), + BETA = sum(participants_2$Groups=="BETA"), + MED = sum(participants_2$Groups=="MED"), + UB = sum(participants_2$Groups=="UB"), + UBD = sum(participants_2$Groups=="UBD"), + Student = sum(participants_2$Groups=="Student"), + External = sum(participants_2$Groups=="External") +) # Convert date to date type nr_participants$date <- as.Date(nr_participants$date, "%Y-%m-%d") # Paste new row below the existing data -nr_participants_all <- rbind(nr_participants, new_row) +nr_participants_all <- rbindlist(list(nr_participants, new_row2), + use.names = TRUE, + fill = TRUE) ``` As of `r date`, there are `r new_row$total` participants enrolled in the course. `r new_row$uu` of them are enrolled with their "@uu.nl" email address, and `r new_row$uu_students` of them with the "@students.uu.nl" email address. `r new_row$other` participants are either from an external institution or have used a personal email address to enroll in the course. @@ -184,7 +204,7 @@ In the below bar chart, you can see the development of the number of participant ```{r} #| label: plot-participants -#| code-summary: "Code to plot the participants over time " +#| code-summary: "Code to plot the participants over time" # From wide to long nr_participants_long <- pivot_longer(data = nr_participants_all, @@ -225,6 +245,18 @@ ggplot(nr_participants_long, aes(x = date, y = value, fill = name)) + styling ``` +## Participation per faculty + +On `r date`, this was the division of faculties in the module (total: `r new_row$total`): + +```{r} +#| label: faculty-table +#| code-summary: "Code to create a table of participation per faculty" + +counts <- participants_2 %>% count(Groups) + +``` + ## Participants' progress Below you can see the average progress per group of participants for each block in the course as of `r date`. From 8a7b01f24f2863c2da741044e7249e3bd65d8b1f Mon Sep 17 00:00:00 2001 From: DorienHuijser Date: Thu, 22 Feb 2024 17:16:02 +0100 Subject: [PATCH 3/4] rewrite code to also save and visualize faculty info --- PBfR_stats.qmd | 249 ++++++++++++++++++++++++++++++++++--------------- 1 file changed, 173 insertions(+), 76 deletions(-) diff --git a/PBfR_stats.qmd b/PBfR_stats.qmd index bdfd794..298daf6 100644 --- a/PBfR_stats.qmd +++ b/PBfR_stats.qmd @@ -1,9 +1,5 @@ ## About -TODO: -- instead of UU/Student/External, take faculties as grouping variable in all graphs -- Write to new files - In this report, you'll find some data on the usage of the online training "Privacy Basics for Researchers". This online module was created by Research Data Management Support at Utrecht University (NL) to provide a researcher-friendly introduction into the General Data Protection Regulation (GDPR), with a focus on how it applies to scientific research performed at Utrecht University (UU). A description of and a registration link to the online module can be found on the [RDM Support website](https://www.uu.nl/en/research/research-data-management/walk-in-hours-workshops/privacy-basics-online-training). The module is embedded within the Utrecht University Moodle platform, "ULearning", but the raw module materials are also available [online via Zenodo](https://doi.org/10.5281/zenodo.7930571). @@ -18,6 +14,17 @@ This report is primarily meant for internal monitoring purposes at the moment. W To obtain the data for this report from the ULearning platform, the following steps should be followed by a teacher/administrator in the ULearning platform: +##### 0. Add Groups to participants + +1. From course main page, go to Participants. +2. Set the following selection criteria: Match Any - *Groups* - *No Groups* +3. Click "Apply filters" +4. Assign the participants that appear (if any) to the correct group, by clicking the pencil icon in the Groups column for that participant: + - `@students.uu.nl` should get "Student" + - `@umcutrecht.nl` should get "MED" + - `@uu.nl` email addresses: go to the [Employees page](https://intranet.uu.nl/en/search-a-colleague?search_type=FindByName&search_value) on intranet and search for their name or email address. Use the abbreviation of the faculty in which they are listed on the intranet. + - Other email addresses get "External" + ##### 1. List of enrolled participants 1. From course main page, go to Participants. @@ -62,6 +69,7 @@ We first have to read and clean the data to get usable data frames. We don't wan #| code-summary: "Code to load dependencies" library(tidyverse) library(data.table) +library(kableExtra) ``` ```{r} @@ -71,14 +79,16 @@ library(data.table) # UU colors: https://www.uu.nl/en/organisation/corporate-identity/brand-policy/colour UU_pallette <- c( "#FFE6AB", # Lighter yellow + "#FFCD00", # UU yellow "#F3965E", # Orange + "#C00A35", # Red "#AA1555", # Bordeaux-red "#6E3B23", # Brown "#24A793", # Green "#5287C6", # Blue "#001240", # Dark blue "#5B2182", # Purple - "#FFCD00" # UU yellow + "#000000" # Black ) uucol <- "#FFCD00" @@ -151,9 +161,16 @@ participants_2 <- participants %>% filter(!(Groups == "Red" & !is.na(Groups))) # Filter progress and quiz dataframes based on participants progress_2 <- progress %>% semi_join(select(participants_2, - Email.address)) + Email.address), + by = join_by(Email.address)) %>% + # Also add Groups + left_join(select(participants_2, Groups, Email.address)) + quiz_2 <- quiz %>% semi_join(select(participants_2, - Email.address)) + Email.address), + by = join_by(Email.address)) %>% + # Also add Groups + left_join(select(participants_2, Groups, Email.address)) ``` ## Number of participants @@ -193,7 +210,7 @@ new_row <- data.frame(date = date, nr_participants$date <- as.Date(nr_participants$date, "%Y-%m-%d") # Paste new row below the existing data -nr_participants_all <- rbindlist(list(nr_participants, new_row2), +nr_participants_all <- rbindlist(list(nr_participants, new_row), use.names = TRUE, fill = TRUE) ``` @@ -253,7 +270,36 @@ On `r date`, this was the division of faculties in the module (total: `r new_row #| label: faculty-table #| code-summary: "Code to create a table of participation per faculty" -counts <- participants_2 %>% count(Groups) +# Select the faculties and total values per date +nrs_faculties <- nr_participants_all %>% + select(date, DGK:External, total) %>% + filter(!is.na(DGK)) + +# make a long dataframe +nrs_faculties_long <- nrs_faculties %>% + pivot_longer(cols = -date, + names_to = "Faculty", + values_to = "Participants") %>% + mutate(date = as.character(date)) + +# make it wide again so that the df is in the right format for the table +nrs_faculties_wide <- nrs_faculties_long %>% + pivot_wider(names_from = date, + values_from = Participants) + +# Create the table with kableExtra +kable(nrs_faculties_wide, format = "html", output = FALSE, + caption = "Participants per faculty", + table.attr='cellpadding="3", cellspacing="3"') %>% + kable_styling(bootstrap_options = c("striped", + "hover", + "condensed", + "responsive"), + fixed_thead = T) %>% + # Highligh the last row (total) in yellow and bold + # Source: https://haozhu233.github.io/kableExtra/awesome_table_in_html.html + row_spec(length(nrs_faculties_wide$Faculty), + bold = T, color = "black", background = uucol) ``` @@ -266,26 +312,32 @@ Below you can see the average progress per group of participants for each block #| code-summary: "Code to plot latest progress per chapter and group" progress_3 <- progress_2 %>% - # Delete columns we won't use and turn character completion into numeric 0 or 1 + # Delete columns we won't use select(-starts_with("X")) %>% - mutate_at(vars(-Email.address), ~ifelse(. == "Completed", 1, 0)) - -# Create a factor variable for group membership (UU, student or other) -progress_3$group <- as.factor(ifelse(grepl("@uu.nl$", - progress_3$Email.address), - "uu", - ifelse(grepl("@students.uu.nl$", - progress_3$Email.address), - "uu_students", - "other"))) + # Turn character completion into numeric 0 or 1 + mutate_at(vars(-Email.address, -Groups), + ~ifelse(. == "Completed", 1, 0)) %>% + # Turn Groups variable into a factor + mutate(Groups = factor(Groups, + levels = c("DGK", "REBO", "FSW", "GEO", "GW", + "BETA", "MED", "UB", "UBD", + "Student", "External")), + #Create a factor variable for alternative group membership (UU, student or other) + group = as.factor(ifelse(grepl("@uu.nl$", + Email.address), + "uu", + ifelse(grepl("@students.uu.nl$", + Email.address), + "uu_students", + "other")))) # Set order of the factor levels -progress_3$group <- factor(progress_3$group, +progress_3$group <- factor(progress_3$group, levels = c("uu", "uu_students", "other")) # Group blocks into sections for easier visualization latest_progress_long <- progress_3 %>% - pivot_longer(cols = -c(Email.address, group), + pivot_longer(cols = -c(Email.address, Groups, group), names_to = "block", values_to = "completion") %>% mutate(chapter = ifelse(startsWith(block, "Welcome") | @@ -334,33 +386,50 @@ latest_progress_long <- progress_3 %>% ) ) -# Plot average progress score (per person) per section per group + +# Count people per faculty who appear in the progress file +n <- progress_3 %>% count(Groups) + +# Save completion rate per faculty +progress_per_fac <- latest_progress_long %>% + group_by(Groups) %>% + summarise(avg_completion_rate = mean(completion) * 100) %>% + left_join(n) %>% + mutate(date = date) + +# Plot progress per faculty +progress_per_fac %>% + mutate(graph_label = paste0(Groups, "\n (n = ", n, ")")) %>% + ggplot(aes(x = graph_label, + y = avg_completion_rate)) + + geom_bar(stat = "identity", + position = position_dodge(0.9), + fill = uucol) + + geom_text(aes(label = paste0(round(avg_completion_rate, 0), "%"), + y = avg_completion_rate + 2), # Adjust label position as needed + size = 3.5, color = "black", position = position_dodge(0.9)) + + labs(x = "Faculty", y = "Average progress (%)", + title = paste0("Average progress (%) per faculty on ", date)) + + styling +``` + +```{r} +# Plot average progress score (per person) per chapter latest_progress_long %>% - group_by(chapter, group) %>% + group_by(chapter) %>% summarise(avg_completion_rate = mean(completion)) %>% ungroup() %>% ggplot(aes(x = chapter, - y = avg_completion_rate * 100, - fill = group)) + - geom_bar(stat = "identity", position = position_dodge(0.9)) + + y = avg_completion_rate * 100)) + + geom_bar(stat = "identity", + position = position_dodge(0.9), + fill = uucol) + geom_text(aes(label = paste0(round(avg_completion_rate * 100, 0), "%"), y = avg_completion_rate * 100 + 2), # Adjust label position as needed size = 3.5, color = "black", position = position_dodge(0.9)) + labs(x = "Chapter", y = "Average progress (%)", - fill = "Group", - title = paste0("Average progress (%) on ", - date)) + - scale_fill_manual(name = "Group", - labels = c("uu" = paste0("UU staff (n = ", - sum(progress_3$group == "uu"), - ")"), - "uu_students" = paste0("UU students (n = ", - sum(progress_3$group == "uu_students"), - ")"), - "other" = paste0("Others (n = ", - sum(progress_3$group == "other"), - ")")), - values = UU_pallette) + + title = paste0("Average progress (%) on ", date)) + + styling ``` @@ -370,19 +439,36 @@ Below, you can see the average progress over time. On July 11th, the ULearning p #| label: progress-over-time #| code-summary: "Code to plot average progress over time" -progress_4 <- progress_3 %>% +progress_4_fac <- progress_3 %>% # From wide to long format based on the Email address and group - pivot_longer(cols = -c(Email.address, group), + pivot_longer(cols = -c(Email.address, Groups, group), + names_to = "block", + values_to = "completion") %>% + group_by(Email.address, Groups) %>% + # Calculate average completion rate per participant + summarise(progress = mean(completion)) %>% + # Put date in a new date column for all rows in the dataframe + mutate(date = as.Date(rep(date, n()))) + +progress_4_group <- progress_3 %>% +# From wide to long format based on the Email address and group + pivot_longer(cols = -c(Email.address, Groups, group), names_to = "block", values_to = "completion") %>% group_by(Email.address, group) %>% # Calculate average completion rate per participant summarise(progress = mean(completion)) %>% # Put date in a new date column for all rows in the dataframe - mutate(date = rep(date, n())) + mutate(date = as.Date(rep(date, n()))) + +# Calculate new progress per faculty dataframe +avg_progress_new_fac <- progress_4_fac %>% + group_by(Groups, date) %>% + summarise(n = n(), # nr of people underlying each average + avg_progress = mean(progress) * 100) # Calculate new progress per group dataframe -avg_progress_new <- progress_4 %>% +avg_progress_new_group <- progress_4_group %>% group_by(group, date) %>% summarise(n = n(), # nr of people underlying each average avg_progress = mean(progress) * 100) @@ -395,14 +481,16 @@ avg_progress_cats$group <- factor(avg_progress_cats$group, "other")) # Combine old and new data in 1 dataframe -avg_progress_cats_2 <- bind_rows(avg_progress_cats, - avg_progress_new) +avg_progress_cats_new <- bind_rows(avg_progress_cats, + avg_progress_new_fac, + avg_progress_new_group) # Plot average progress over time per group -avg_progress_cats_2 %>% +avg_progress_cats_new[!is.na(avg_progress_cats_new$group),] %>% ggplot(aes(x = date, y = avg_progress, color = group)) + + geom_point() + geom_line(linewidth = 1) + labs(x = "Date", y = "Average Progress (%)", @@ -470,6 +558,23 @@ quiz_4 <- quiz_3 %>% # Rearrange the columns for easier readability select(date, group, n, total_grade, starts_with("Q")) +# Summarize the new quiz data per faculty +quiz_4_fac <- quiz_3 %>% + # Group by faculty for summary calculations + group_by(Groups) %>% + # For every faculty, save the sample size, total grade, and mean grade per question + summarise( + n = n(), + total_grade = mean(Grade, na.rm = TRUE), + across(starts_with("Q"), + ~ mean(., na.rm = TRUE)/0.6*100) + ) %>% + # Also save the date in the dataframe + mutate(date = as.Date(date, "%Y-%m-%d")) %>% + # Rearrange the columns for easier readability + select(date, Groups, n, total_grade, starts_with("Q")) + + # Summarize new quiz data total (not per group) quiz_4_total <- quiz_3 %>% ungroup() %>% @@ -484,16 +589,12 @@ quiz_4_total <- quiz_3 %>% # Rearrange the columns for easier readability select(date, n, total_grade, starts_with("Q")) -# Add the scores to the final dataframe quizscores -#quizscores <- rbind(quizscores, df) -#total_quiz_scores <- rbind(total_quiz_scores, df2) - # Make date variables in old dataframes date too in order to merge quizscores$date <- as.Date(quizscores$date, "%Y-%m-%d") total_quiz_scores$date <- as.Date(total_quiz_scores$date, "%Y-%m-%d") # Append new quizscores to old quiz scores -quizscores_new <- bind_rows(quizscores, quiz_4) +quizscores_new <- bind_rows(quizscores, quiz_4, quiz_4_fac) quizscores_new$group <- factor(quizscores_new$group, levels = c("uu", "uu_students", @@ -506,27 +607,22 @@ Below you can see the average final score on the quiz for the latest quiz result ```{r} #| label: quiz-latest-grade -#| code-summary: "Code to plot the latest final grade per group" - -latest_quiz_df <- quiz_4 %>% - # Create a label for the graph - mutate(label = case_when( - group == "uu" ~ paste0("UU staff (n = ", n, ")"), - group == "uu_students" ~ paste0("UU students (n = ", n, ")"), - group == "other" ~ paste0("Others (n = ", n, ")") - )) - -latest_quiz_df %>% - ggplot(aes(x = group, y = total_grade, fill = group)) + - stat_summary(geom = "bar", fun = "mean", position = "dodge", na.rm = TRUE) + - labs(x = "Group", y = "Average grade", - title = paste0("Average grade per group as per ", date)) + - geom_text(aes(label = round(total_grade,2)), - position = position_dodge(width = 0.9), vjust = -0.5, size = 3.5) + - scale_x_discrete(labels = latest_quiz_df$label) + - scale_fill_manual(values = UU_pallette) + - styling + - theme(legend.position = "none") # Remove the legend +#| code-summary: "Code to plot the latest final grade per faculty" + +quiz_4_fac %>% + mutate(graph_label = paste0(Groups, "\n (n = ", n, ")")) %>% + ggplot(aes(x = graph_label, + y = total_grade)) + + geom_bar(stat = "identity", + position = position_dodge(0.9), + fill = uucol) + + geom_text(aes(label = round(total_grade, 2), + y = total_grade + 0.5), # Adjust label position as needed + size = 3.5, color = "black", position = position_dodge(0.9)) + + labs(x = "Faculty", y = "Average grade", + title = paste0("Average grade per faculty on ", date)) + + styling + ``` Below is a table with the average scores (in %) per question in the most recent quiz data. @@ -563,7 +659,8 @@ Below you can find the number of attempts (either in Progress or Finished) quizscores_attempts <- quizscores_new %>% select(date, group, - n) + n) %>% + filter(!is.na(group)) # Line plot quizscores_attempts %>% @@ -591,7 +688,7 @@ write.csv(nr_participants_all, row.names = FALSE) # progress -write.csv(avg_progress_cats_2, +write.csv(avg_progress_cats_new, "data/processed/avg_progress_cats.csv", row.names = FALSE) From d98caa684c6db8c67a305e9e1a57ae46f0b033a0 Mon Sep 17 00:00:00 2001 From: DorienHuijser Date: Thu, 22 Feb 2024 17:16:55 +0100 Subject: [PATCH 4/4] save new files with faculty info --- data/processed/avg_progress_cats.csv | 91 ++++++++++++++++------------ data/processed/nr_participants.csv | 29 ++++----- data/processed/quizscores.csv | 71 ++++++++++++---------- 3 files changed, 106 insertions(+), 85 deletions(-) diff --git a/data/processed/avg_progress_cats.csv b/data/processed/avg_progress_cats.csv index 43bece1..dd069db 100644 --- a/data/processed/avg_progress_cats.csv +++ b/data/processed/avg_progress_cats.csv @@ -1,40 +1,51 @@ -"group","date","n","avg_progress" -"uu",2023-06-05,10,17.64705882 -"uu",2023-06-15,16,27.02205882 -"uu",2023-06-23,20,34.85294118 -"uu",2023-07-13,15,0.208333333 -"uu",2023-07-24,15,0.208333333 -"uu",2023-08-03,16,6.0546875 -"uu",2023-08-14,18,11.28472222 -"uu",2023-08-24,21,13.83928571 -"uu",2023-09-14,26,18.14903846 -"uu",2023-10-04,36,23.95833333 -"uu",2023-11-09,38,26.06907895 -"other",2023-06-15,3,36.2745098 -"other",2023-06-23,4,27.20588235 -"other",2023-07-13,1,0 -"other",2023-07-24,2,0 -"other",2023-08-03,4,25 -"other",NA,6,17.70833333 -"other",2023-08-24,6,25 -"other",2023-09-14,9,27.43055556 -"other",2023-10-04,10,24.6875 -"other",2023-11-09,10,24.6875 -"uu_students",2023-06-15,2,1.470588235 -"uu_students",2023-06-23,2,1.470588235 -"uu_students",2023-07-24,1,87.5 -"uu_students",2023-08-03,1,87.5 -"uu_students",2023-08-14,2,43.75 -"uu_students",2023-08-24,2,43.75 -"uu_students",2023-09-14,3,57.29166667 -"uu_students",2023-10-04,4,42.96875 -"uu_students",2023-11-09,5,34.375 -"uu",2023-12-01,44,27.76988636 -"uu_students",2023-12-01,9,50 -"other",2023-12-01,10,24.6875 -"uu",2024-01-08,50,26.25 -"uu_students",2024-01-08,10,54.0625 -"other",2024-01-08,10,24.6875 -"uu",2024-02-01,58,25.7004310344828 -"uu_students",2024-02-01,13,48.7980769230769 -"other",2024-02-01,12,24.21875 +"group","date","n","avg_progress","Groups" +"uu",2023-06-05,10,17.64705882,NA +"uu",2023-06-15,16,27.02205882,NA +"uu",2023-06-23,20,34.85294118,NA +"uu",2023-07-13,15,0.208333333,NA +"uu",2023-07-24,15,0.208333333,NA +"uu",2023-08-03,16,6.0546875,NA +"uu",2023-08-14,18,11.28472222,NA +"uu",2023-08-24,21,13.83928571,NA +"uu",2023-09-14,26,18.14903846,NA +"uu",2023-10-04,36,23.95833333,NA +"uu",2023-11-09,38,26.06907895,NA +"other",2023-06-15,3,36.2745098,NA +"other",2023-06-23,4,27.20588235,NA +"other",2023-07-13,1,0,NA +"other",2023-07-24,2,0,NA +"other",2023-08-03,4,25,NA +"other",2023-08-14,6,17.70833333,NA +"other",2023-08-24,6,25,NA +"other",2023-09-14,9,27.43055556,NA +"other",2023-10-04,10,24.6875,NA +"other",2023-11-09,10,24.6875,NA +"uu_students",2023-06-15,2,1.470588235,NA +"uu_students",2023-06-23,2,1.470588235,NA +"uu_students",2023-07-24,1,87.5,NA +"uu_students",2023-08-03,1,87.5,NA +"uu_students",2023-08-14,2,43.75,NA +"uu_students",2023-08-24,2,43.75,NA +"uu_students",2023-09-14,3,57.29166667,NA +"uu_students",2023-10-04,4,42.96875,NA +"uu_students",2023-11-09,5,34.375,NA +"uu",2023-12-01,44,27.76988636,NA +"uu_students",2023-12-01,9,50,NA +"other",2023-12-01,10,24.6875,NA +"uu",2024-01-08,50,26.25,NA +"uu_students",2024-01-08,10,54.0625,NA +"other",2024-01-08,10,24.6875,NA +NA,2024-02-01,12,15.3645833333333,"DGK" +NA,2024-02-01,5,36.25,"REBO" +NA,2024-02-01,18,34.375,"FSW" +NA,2024-02-01,2,46.875,"GEO" +NA,2024-02-01,5,1.875,"GW" +NA,2024-02-01,15,27.5,"BETA" +NA,2024-02-01,1,6.25,"MED" +NA,2024-02-01,2,6.25,"UB" +NA,2024-02-01,1,71.875,"UBD" +NA,2024-02-01,11,49.1477272727273,"Student" +NA,2024-02-01,11,25.8522727272727,"External" +"uu",2024-02-01,58,25.7004310344828,NA +"uu_students",2024-02-01,13,48.7980769230769,NA +"other",2024-02-01,12,24.21875,NA diff --git a/data/processed/nr_participants.csv b/data/processed/nr_participants.csv index 6227eb9..d4f2311 100644 --- a/data/processed/nr_participants.csv +++ b/data/processed/nr_participants.csv @@ -1,14 +1,15 @@ -"date","total","uu","uu_students","other" -2023-06-05,10,10,0,0 -2023-06-15,21,16,2,3 -2023-06-23,26,20,2,4 -2023-07-13,16,15,0,1 -2023-07-24,43,34,4,5 -2023-08-03,46,35,4,7 -2023-08-14,20,15,3,2 -2023-08-24,54,40,5,9 -2023-09-14,62,44,6,12 -2023-10-04,74,54,7,13 -2023-11-09,77,56,8,13 -2023-12-01,87,62,12,13 -2024-01-08,94,68,13,13 +"date","total","uu","uu_students","other","DGK","REBO","FSW","GEO","GW","BETA","MED","UB","UBD","Student","External" +2023-06-05,10,10,0,0,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2023-06-15,21,16,2,3,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2023-06-23,26,20,2,4,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2023-07-13,16,15,0,1,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2023-07-24,43,34,4,5,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2023-08-03,46,35,4,7,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2023-08-14,20,15,3,2,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2023-08-24,54,40,5,9,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2023-09-14,62,44,6,12,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2023-10-04,74,54,7,13,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2023-11-09,77,56,8,13,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2023-12-01,87,62,12,13,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA +2024-01-08,94,68,13,13,15,6,18,2,9,13,4,4,1,13,9 +2024-02-01,107,75,17,15,16,7,21,3,9,16,4,4,2,14,11 diff --git a/data/processed/quizscores.csv b/data/processed/quizscores.csv index 9f7269d..5720435 100644 --- a/data/processed/quizscores.csv +++ b/data/processed/quizscores.csv @@ -1,31 +1,40 @@ -"date","group","n","total_grade","Q1","Q2","Q3","Q4","Q5","Q6","Q7","Q8","Q9","Q10","Q11","Q12","Q13","Q14","Q15","Q16" -2023-07-24,"uu",9,8.185714286,77.77777778,96.2962963,87.03703704,100,93.75,93.75,75,87.5,87.5,100,62.5,70.83333333,62.5,62.5,87.5,87.5 -2023-07-24,"uu_students",1,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100 -2023-07-24,"other",1,8,0,100,66.66666667,100,50,100,100,100,100,100,100,66.66666667,100,0,100,100 -2023-08-03,"uu",10,8.1625,80,96.66666667,86.66666667,100,94.44444444,94.44444444,77.77777778,77.77777778,88.88888889,100,66.66666667,74.07407407,55.55555556,55.55555556,88.88888889,88.88888889 -2023-08-03,"uu_students",1,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100 -2023-08-03,"other",1,8,0,100,66.66666667,100,50,100,100,100,100,100,100,66.66666667,100,0,100,100 -2023-08-14,"uu",11,8.144444444,72.72727273,93.93939394,86.36363636,100,95,95,80,80,90,100,70,70,60,50,90,90 -2023-08-14,"uu_students",1,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100 -2023-08-14,"other",1,8,0,100,66.66666667,100,50,100,100,100,100,100,100,66.66666667,100,0,100,100 -2023-08-24,"uu",12,8.17,75,94.44444444,86.11111111,100,95.45454545,95.45454545,81.81818182,81.81818182,90.90909091,100,72.72727273,69.6969697,54.54545455,45.45454545,90.90909091,90.90909091 -2023-08-24,"uu_students",1,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100 -2023-08-24,"other",1,8,0,100,66.66666667,100,50,100,100,100,100,100,100,66.66666667,100,0,100,100 -2023-09-14,"uu",14,8.258333333,78.57142857,95.23809524,86.9047619,100,96.15384615,96.15384615,76.92307692,84.61538462,92.30769231,100,76.92307692,74.35897436,53.84615385,46.15384615,84.61538462,92.30769231 -2023-09-14,"uu_students",2,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100 -2023-09-14,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.33333333,100,50,100,100 -2023-10-04,"uu",17,8.233333333,82.35294118,94.11764706,88.23529412,100,96.875,96.875,75,75,90.625,93.75,81.25,72.91666667,62.5,43.75,87.5,87.5 -2023-10-04,"uu_students",2,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100 -2023-10-04,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.33333333,100,50,100,100 -2023-11-09,"uu",18,8.2125,83.33333333,94.44444444,87.03703704,100,97.05882353,91.17647059,70.58823529,76.47058824,91.17647059,94.11764706,82.35294118,74.50980392,64.70588235,41.17647059,88.23529412,88.23529412 -2023-11-09,"uu_students",2,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100 -2023-11-09,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.33333333,100,50,100,100 -2023-12-01,"uu",20,8.083333333,85,93.33333333,85,100,94.73684211,89.47368421,63.15789474,73.68421053,88.59649123,94.73684211,84.21052632,73.68421053,68.42105263,36.84210526,89.47368421,84.21052632 -2023-12-01,"uu_students",5,7.95,100,100,87.5,100,100,75,75,75,87.5,75,75,75,50,25,100,75 -2023-12-01,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.33333333,100,50,100,100 -2024-01-08,"uu",21,8.1,80.9523809523809,93.6507936507936,84.9206349206349,100,95,90,65,75,89.1666666666667,95,85,73.3333333333333,70,35,90,85 -2024-01-08,"uu_students",6,7.9,100,100,86.6666666666667,100,100,80,80,60,80,80,80,80,60,20,100,60 -2024-01-08,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.3333333333333,100,50,100,100 -2024-02-01,"uu",24,7.875,77.2727272727273,92.4242424242424,82.5757575757576,97.6190476190476,92.8571428571429,85.7142857142857,61.9047619047619,71.4285714285714,86.5079365079365,95.2380952380952,80.9523809523809,68.2539682539683,71.4285714285714,33.3333333333333,90.4761904761905,85.7142857142857 -2024-02-01,"uu_students",7,8.15,100,100,88.8888888888889,100,100,83.3333333333333,83.3333333333333,66.6666666666667,83.3333333333333,83.3333333333333,83.3333333333333,83.3333333333333,66.6666666666667,16.6666666666667,100,66.6666666666667 -2024-02-01,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.3333333333333,100,50,100,100 +"date","group","n","total_grade","Q1","Q2","Q3","Q4","Q5","Q6","Q7","Q8","Q9","Q10","Q11","Q12","Q13","Q14","Q15","Q16","Groups" +2023-07-24,"uu",9,8.185714286,77.77777778,96.2962963,87.03703704,100,93.75,93.75,75,87.5,87.5,100,62.5,70.83333333,62.5,62.5,87.5,87.5,NA +2023-07-24,"uu_students",1,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100,NA +2023-07-24,"other",1,8,0,100,66.66666667,100,50,100,100,100,100,100,100,66.66666667,100,0,100,100,NA +2023-08-03,"uu",10,8.1625,80,96.66666667,86.66666667,100,94.44444444,94.44444444,77.77777778,77.77777778,88.88888889,100,66.66666667,74.07407407,55.55555556,55.55555556,88.88888889,88.88888889,NA +2023-08-03,"uu_students",1,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100,NA +2023-08-03,"other",1,8,0,100,66.66666667,100,50,100,100,100,100,100,100,66.66666667,100,0,100,100,NA +2023-08-14,"uu",11,8.144444444,72.72727273,93.93939394,86.36363636,100,95,95,80,80,90,100,70,70,60,50,90,90,NA +2023-08-14,"uu_students",1,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100,NA +2023-08-14,"other",1,8,0,100,66.66666667,100,50,100,100,100,100,100,100,66.66666667,100,0,100,100,NA +2023-08-24,"uu",12,8.17,75,94.44444444,86.11111111,100,95.45454545,95.45454545,81.81818182,81.81818182,90.90909091,100,72.72727273,69.6969697,54.54545455,45.45454545,90.90909091,90.90909091,NA +2023-08-24,"uu_students",1,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100,NA +2023-08-24,"other",1,8,0,100,66.66666667,100,50,100,100,100,100,100,100,66.66666667,100,0,100,100,NA +2023-09-14,"uu",14,8.258333333,78.57142857,95.23809524,86.9047619,100,96.15384615,96.15384615,76.92307692,84.61538462,92.30769231,100,76.92307692,74.35897436,53.84615385,46.15384615,84.61538462,92.30769231,NA +2023-09-14,"uu_students",2,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100,NA +2023-09-14,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.33333333,100,50,100,100,NA +2023-10-04,"uu",17,8.233333333,82.35294118,94.11764706,88.23529412,100,96.875,96.875,75,75,90.625,93.75,81.25,72.91666667,62.5,43.75,87.5,87.5,NA +2023-10-04,"uu_students",2,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100,NA +2023-10-04,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.33333333,100,50,100,100,NA +2023-11-09,"uu",18,8.2125,83.33333333,94.44444444,87.03703704,100,97.05882353,91.17647059,70.58823529,76.47058824,91.17647059,94.11764706,82.35294118,74.50980392,64.70588235,41.17647059,88.23529412,88.23529412,NA +2023-11-09,"uu_students",2,7.2,100,100,83.33333333,100,100,100,100,0,100,0,0,66.66666667,100,0,100,100,NA +2023-11-09,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.33333333,100,50,100,100,NA +2023-12-01,"uu",20,8.083333333,85,93.33333333,85,100,94.73684211,89.47368421,63.15789474,73.68421053,88.59649123,94.73684211,84.21052632,73.68421053,68.42105263,36.84210526,89.47368421,84.21052632,NA +2023-12-01,"uu_students",5,7.95,100,100,87.5,100,100,75,75,75,87.5,75,75,75,50,25,100,75,NA +2023-12-01,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.33333333,100,50,100,100,NA +2024-01-08,"uu",21,8.1,80.9523809523809,93.6507936507936,84.9206349206349,100,95,90,65,75,89.1666666666667,95,85,73.3333333333333,70,35,90,85,NA +2024-01-08,"uu_students",6,7.9,100,100,86.6666666666667,100,100,80,80,60,80,80,80,80,60,20,100,60,NA +2024-01-08,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.3333333333333,100,50,100,100,NA +2024-02-01,"uu",24,7.875,77.2727272727273,92.4242424242424,82.5757575757576,97.6190476190476,92.8571428571429,85.7142857142857,61.9047619047619,71.4285714285714,86.5079365079365,95.2380952380952,80.9523809523809,68.2539682539683,71.4285714285714,33.3333333333333,90.4761904761905,85.7142857142857,NA +2024-02-01,"uu_students",7,8.15,100,100,88.8888888888889,100,100,83.3333333333333,83.3333333333333,66.6666666666667,83.3333333333333,83.3333333333333,83.3333333333333,83.3333333333333,66.6666666666667,16.6666666666667,100,66.6666666666667,NA +2024-02-01,"other",2,8.95,50,100,75,100,75,100,100,100,100,100,100,83.3333333333333,100,50,100,100,NA +2024-02-01,NA,9,7.56,71.4285714285714,90.4761904761905,76.1904761904762,91.6666666666667,91.6666666666667,66.6666666666667,50,83.3333333333333,88.8888888888889,100,83.3333333333333,66.6666666666667,83.3333333333333,33.3333333333333,83.3333333333333,100,"BETA" +2024-02-01,NA,3,7.06666666666667,66.6666666666667,88.8888888888889,77.7777777777778,100,83.3333333333333,83.3333333333333,0,33.3333333333333,77.7777777777778,100,66.6666666666667,55.5555555555556,100,33.3333333333333,100,66.6666666666667,"DGK" +2024-02-01,NA,1,9.9,100,100,83.3333333333333,100,100,100,100,100,100,100,100,100,100,100,100,100,"External" +2024-02-01,NA,6,8.45,100,100,91.6666666666667,100,91.6666666666667,100,66.6666666666667,83.3333333333333,91.6666666666667,83.3333333333333,83.3333333333333,77.7777777777778,66.6666666666667,16.6666666666667,100,100,"FSW" +2024-02-01,NA,1,8,100,100,83.3333333333333,100,100,100,100,0,100,100,100,100,0,0,100,100,"GEO" +2024-02-01,NA,4,8.2,75,91.6666666666667,87.5,100,100,87.5,100,100,75,100,75,75,50,50,75,75,"GW" +2024-02-01,NA,1,8,0,100,66.6666666666667,100,50,100,100,100,100,100,100,66.6666666666667,100,0,100,100,"MED" +2024-02-01,NA,2,8.2,50,83.3333333333333,83.3333333333333,100,100,100,100,50,100,100,100,50,100,50,100,50,"REBO" +2024-02-01,NA,6,7.9,100,100,86.6666666666667,100,100,80,80,60,80,80,80,80,60,20,100,60,"Student"