From e98bacabb8a1e7095a966f1461bf4a345a60433e Mon Sep 17 00:00:00 2001 From: Benjamin Mako Hill Date: Wed, 14 Oct 2020 19:42:07 -0700 Subject: [PATCH] simple R script to track participation lits two things: - number of times folks have been called on - number of times folks have bee absent/present --- data/track_participation.R | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 data/track_participation.R diff --git a/data/track_participation.R b/data/track_participation.R new file mode 100644 index 0000000..d44e74d --- /dev/null +++ b/data/track_participation.R @@ -0,0 +1,24 @@ +library(ggplot2) + +gs <- read.delim("student_information.tsv") +d <- gs[,c(2,5)] +colnames(d) <- c("student.num", "discord.name") + +call.list <- do.call("rbind", lapply(list.files(".", pattern="^call_list-.*tsv$"), function (x) {read.delim(x)})) +colnames(call.list) <- gsub("_", ".", colnames(call.list)) + +call.counts <- data.frame(table(call.list$discord.name)) +colnames(call.counts) <- c("discord.name", "num.calls") + +d <- merge(d, call.counts, all.x=TRUE, all.y=TRUE, by="discord.name"); d + +## set anything that's missing to zero +d$num.calls[is.na(d$num.calls)] <- 0 + +attendance <- unlist(lapply(list.files(".", pattern="^attendance-.*tsv$"), function (x) {d <- read.delim(x); strsplit(d[[2]], ",")})) + +attendance.counts <- data.frame(table(attendance)) +colnames(attendance.counts) <- c("discord.name", "num.present") + +d <- merge(d, attendance.counts, all.x=TRUE, all.y=TRUE, by="discord.name"); d + -- 2.39.5