Department of Statistics develops interdisciplinary course in R for all students needing data analysis skills


Across almost all colleges at Colorado State University, students are asked to confront, analyze, and understand data. Some majors, like computer science and statistics, require that students have in-depth training in data analysis, while others aren’t able to provide such detailed instruction.

Person working with data on a computerUntil now there has been no formal programming-based data analysis prerequisite course for students going into highly analytical STEM classes. This can leave students under-prepared when they arrive in upper-level courses requiring both analytical techniques and proficiency in programming languages that perform these analyses.

Many professors have found themselves teaching the basics of the programming language R, so that students can perform necessary data analyses for their courses, which diverts time and attention away from the real material of the course.

Recognizing this need, senior instructor and undergraduate advisor Ben Prytherch in the Department of Statistics and Matt Ross, an assistant professor in Ecosystem Science and Sustainability in the Warner College of Natural Resources, decided to develop three linked, one-credit undergraduate-level R courses.

“Matt’s initial idea was: ‘Can we come up with an online delivered R course that would serve any class, in any department in any college where students are going to be using this programming language and take that burden off of the professors?’” Prytherch said.

After proposing the idea to their department chairs, Prytherch and Ross were awarded funding from CSU’s Digital Learning Initiative to move forward with the idea.

Statistics Ph.D. student Alex Fout, along with the help of Kathleen Wendt, a graduate student in the Department of Human Development and Family Studies in the College of Health and Human Sciences, began development of these courses this summer. The courses will be virtual and will centralize on R training. They will be accessible and flexible, and allow faculty to spend more time in class teaching core material, and less time teaching R.

“The course isn’t just, ‘How do we program in R?’ or treating it like a normal programming language, it’s ‘How do we get R to do useful things that we need it to do in our particular field of study?’” Fout said

The first of the three courses is meant to take someone from zero experience in R, or programming in general, to a basic level of understanding of what R is, how to use it, and provide them with some practical skills to apply immediately to their field of study.

The subsequent two classes take students through intermediate and advanced levels within the language. “They are designed as three separate courses so that there are different entry points and different exit points to accommodate students’ different levels of experience and different needs,” Fout said.

The classes were designed to be fully online, even before the onset of COVID-19. There are no tests or traditional checkpoints like normal programming classes, instead they are focused on hands-on learning, practice and getting students excited about what they can do with R. Fout said he designed the course with this flexibility in mind, while still trying to build community and collaboration so students don’t feel alone as they work through the material.

“We hope these courses will become widespread prerequisites for those keystone 300-level courses across a variety of majors and colleges and provide a longstanding resource for students to refer to years after they take the course, since all material will be free and open to the public,” said Ross.

The class is also meant to be as accessible as possible. “This serves as a CSU course, but is also an open-source class,” Fout said. “Anybody can go online and see the textbook, and read it and they don’t have to enroll.” This way, students have access to information whenever they want, even after the course is over and even if they never enrolled to begin with.

“We really like the idea of all the materials living online for maximum accessibility,” Prytherch said.

“So why take a course in R?” Ross said. “It will prepare you for future data analysis courses, it will expand your vision for what you are capable of, and it teaches programming languages in a way that invites all people to grow and learn.”