Statistics Class Evaluation
The evals_all.csv contains variables pertaining to questions on course evaluations for a year of courses at St. Lawrence University. The rows pertain to different questions asked for different courses while the columns contain the number of students who responded to each of the 7 possible answers (Agree Strongly, Agree, Somewhat Agree, Neutral, Somewhat Disagree, Disagree, and Disagree Strongly).
For example, the 9 in Agree strongly.x indicate that 9 students responded with “Agree Strongly” to the first question in the 113-02 course in F19 (Fall of 2019).
The last few columns contain information on these same questions, but are the percent of students who respond to each question as a university average.
For example, the 40 in Agree.y indicate that 40% of all university students across all courses respond with Agree for the first question.
library(tidyverse)
library(ggthemes)
library(ggplot2)
evals_df <- read_csv("evals_all.csv", skip= 2)
evals_dfI will be analyzing in depth the question 3, “Environment Conducive to Learning”. During spring semester, Professors had to change their teaching style immediately after the pandemic started. They had to create ways in which every student would still be able to have participate in the class and get the credits they needed. By doing so, they created too many accommodations and were more lenient, perhaps allowing students to do things they would not permit in normal circumstances. I am curious to analyze this question, as I would like to see if there is a difference between the rating for this question before the pandemic and after the pandemic started, to figure out it there was the reason why students considerably rated high, as the meanscore_professor plot shows.
evals_df<- evals_df%>%
mutate(Question_list = fct_recode(Question, `1.Valuable` = "1. Course has been a valuable educational experience",
`2.Organized` = "2. Effectively Organized",
`3.Conducive` = "3. Environment Conducive to Learning",
`5a.Fair` = "5a. Fair Assessment of Student work",
`5b.Timely` = "5b. Timely Assessment of Student Work",
`5c.Constructive` = "5c. Constructive Assessment of Student Work",
`6a.Recommend_in` = "6a. Recommend Instructor to another student",
`6b.Recommend_cour` = "6b. Recommend Course to another student",
`6c.Effective_in` = "6c. Instructor was an effective teacher" )) %>%
select(Question_list, everything())
evals_df <- evals_df %>%
separate(col= Course, into = c("Course_Number", "Section"), sep = "-")
evals_df <- evals_df %>% mutate(nstudents = `Agree strongly.x` + `Agree Somewhat.x`+ `Agree.x`+`Neutral.x` + `Disagree Strongly.x` + `Disagree.x` + `Disagree Somewhat.x`)
## Weighted average for the professor
evals_df <- evals_df %>% mutate(meanscore_prof = 7 * `Agree strongly.x` / nstudents + 6 * `Agree.x` / nstudents + 5 * `Agree Somewhat.x` / nstudents + 4 * `Neutral.x` / nstudents + 3 * `Disagree Somewhat.x` / nstudents + 2* `Disagree.x` / nstudents + 1 * `Disagree Strongly.x`/ nstudents)## Question_list Term Course_Number Section
## 1.Valuable : 6 Length:54 Length:54 Length:54
## 2.Organized : 6 Class :character Class :character Class :character
## 3.Conducive : 6 Mode :character Mode :character Mode :character
## 5a.Fair : 6
## 5b.Timely : 6
## 5c.Constructive: 6
## (Other) :18
## Question Agree strongly.x Agree.x Agree Somewhat.x
## Length:54 Min. : 1.000 Min. : 2.000 Min. : 0.000
## Class :character 1st Qu.: 6.000 1st Qu.: 5.000 1st Qu.: 1.000
## Mode :character Median : 8.000 Median : 7.000 Median : 1.500
## Mean : 7.778 Mean : 7.481 Mean : 1.981
## 3rd Qu.:10.000 3rd Qu.: 9.750 3rd Qu.: 3.000
## Max. :13.000 Max. :16.000 Max. :10.000
##
## Neutral.x Disagree Somewhat.x Disagree.x Disagree Strongly.x
## Min. :0.000 Min. :0.0000 Min. :0.0000 Min. :0.0000
## 1st Qu.:0.000 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000
## Median :1.000 Median :0.0000 Median :0.0000 Median :0.0000
## Mean :1.296 Mean :0.4074 Mean :0.1852 Mean :0.2222
## 3rd Qu.:2.000 3rd Qu.:1.0000 3rd Qu.:0.0000 3rd Qu.:0.0000
## Max. :7.000 Max. :2.0000 Max. :3.0000 Max. :3.0000
##
## Semester Source Agree strongly.y Agree.y
## Length:54 Length:54 Min. :30.00 Min. :30.00
## Class :character Class :character 1st Qu.:35.00 1st Qu.:33.00
## Mode :character Mode :character Median :39.00 Median :40.00
## Mean :38.56 Mean :38.33
## 3rd Qu.:43.00 3rd Qu.:42.00
## Max. :47.00 Max. :47.00
##
## Agree Somewhat.y Neutral.y Disagree Somewhat.y Disagree.y
## Min. : 9.00 Min. :5.000 Min. :2 Min. :1
## 1st Qu.: 9.00 1st Qu.:5.000 1st Qu.:3 1st Qu.:2
## Median :10.00 Median :7.000 Median :3 Median :2
## Mean :10.33 Mean :6.667 Mean :3 Mean :2
## 3rd Qu.:11.00 3rd Qu.:8.000 3rd Qu.:3 3rd Qu.:2
## Max. :12.00 Max. :9.000 Max. :4 Max. :3
##
## Disagree Strongly.y nstudents meanscore_prof
## Min. :1.000 Min. :12.00 Min. :4.857
## 1st Qu.:1.000 1st Qu.:15.00 1st Qu.:5.846
## Median :1.000 Median :18.00 Median :6.128
## Mean :1.111 Mean :19.35 Mean :6.036
## 3rd Qu.:1.000 3rd Qu.:24.00 3rd Qu.:6.351
## Max. :2.000 Max. :27.00 Max. :6.812
##
library(pander)
eval_own <- evals_df %>%
filter(Question_list == "3.Conducive") %>%
select(Term, Section, Course_Number, meanscore_prof)
eval_own %>% pander()| Term | Section | Course_Number | meanscore_prof |
|---|---|---|---|
| F19 | 02 | 113 | 6.125 |
| F19 | 02 | 213 | 6.286 |
| F19 | 04 | 113 | 5.808 |
| S20 | 03 | 113 | 6.333 |
| S20 | 07 | 113 | 6.214 |
| S20 | 01 | 213 | 6.5 |
ggplot(data= eval_own, aes(x=Term, y= `meanscore_prof`, colour= `Course_Number`)) +
geom_point() +
scale_colour_brewer(palette = "Dark2") +
theme_economist()Data analysis
Both table one and graph provide a comparison of ratings between Fall and spring semester for the third question of the survey- “Environment Conducive to Learning”. As mentioned above, the following analysis is intended to decipher whether there is an increase in the score for question three between fall 2019 and spring 2020. By comparing both semesters, It will be possible to broadly discuss the ideas the reason for the increase or decrease of scores for this question. As both the graph and table illustrate, there is a substantial increase in the meanscore for both 113 and 213 courses. For fall semester, the means for this question were between 5.8 and 6.125. On the other hand, the means for Spring semester were between 6.2 and 6.5. In other words, question 3 scored higher in the spring semester. There are a couple of reasons I am able to deduce, by looking at this increase: it is possible that as professors provided more accommodations, flexibility in classes and lenience of professors to support students during the pandemic and encourage learning. The professors’ effort to be considerate to students and still create a way to teach effectively online may have made students more satisfied and prone to rate this question higher than they would usually rate.