STAT 440 Fall 2022 SyllabusWritten on July 26th, 2022 by Christopher Kinson
STAT 440 Statistical Data Management
3/4 Credit Hours - Major Elective
Sections 1UG/1GR & 2UG/2GR
Fall 2022 - Syllabus
Table of Contents
- Course Description
- Learning Objectives
- Course Staff
- Course Specifics
- University Specifics
- Last Word
Statistical Data Management (STAT 440) is a focused data wrangling course that aims to cover various types of data storage, manipulation, cleaning, and extractions and to apply these methodologies in R. This means that students must have a laptop that they bring to class each day. The expectation is that students will gain competency in exploring, organizing, designing, creating, storing, cleaning, wrangling, sharing, and using data, all of which are commonly done prior to data analysis. Critical and creative thinking and efficient coding will be encouraged. Concepts covered in this course will build upon each other. Thus, students can expect all assessments to be cumulative. Students should be sufficient and comfortable in R prior to beginning this course. The RStudio offers reproducible documentation with Markdown syntax which will support long-term learning opportunities. Git propels students’ capacity for collaboration as well as version control of documentation and files.
Because there are two sections of STAT 440 in Fall 2022, readers should assume all information is pertaining to both sections: 1UG/GR and 2UG/GR. If there are ever differences, note the specific section for that item.
These learning objectives are important because they connect the physical know-how with the technical knowledge of the course.
Students will assess effectiveness, organization, and intent from a published data set
Students will explore data sets of various types
Students must design well-organized, clean data sets for the purpose of data analysis
Students will present data management work in a reproducible document file using Markdown syntax and code chunks or cells. No local data files will be utilized.
Students must demonstrate critical thinking and creativity through asking questions about a given data set
Students must be able to explain and summarize data wrangling code
Students will share and discuss data management ideas, coding snippets, and other thoughts to aid in meaningful dialogue
Students must recall important data management concepts
Students will reflect on their own learning of data management principles
Students will build data wrangling tools, apps, and dashboards and store all work using git, a version control software.
Students will collaborate on lab assignments.
Students will reproduce and replicate data visualizations.
Students will assess and critique published visualizations.
- Instructor - Christopher Kinson (firstname.lastname@example.org)
- Teaching Assistant (TA) for Section 1 - Zhe Chen (email@example.com)
Course Assistant (CA) for Section 1 - Jackson Luo (firstname.lastname@example.org)
Teaching Assistant (TA) for Section 2 - Anwesha Chakravarti (email@example.com)
- Teaching Assistant (TA) for Section 2 - Sayan Chakraborty (firstname.lastname@example.org)
The course website is https://github.com/illinois-stat440. This course is operating as an organization named illinois-stat440 within GitHub. Students should bookmark or save the link below in their browser for future use, because it contains access points to all repositories, course materials including notes, assignments, projects, and lecture videos.
The prerequisites for this course are the following:
A laptop (not a netbook) with most up-to-date versions of R and RStudio installed. If using a netbook or Chromebook, please setup an RStudio Cloud account.
STAT 400 or STAT 409
Operating knowledge of computers such as locating a file, creating a directory, saving a file, compressing a file, extracting a compressed file, and fundamental troubleshooting
Operating knowledge of R such as understanding various objects, mathematical and logical operators, and value types and their coercion, as well as creating user-defined functions and fundamental R troubleshooting
For section 1UG/GR, there are in-person meetings at 10:00 am - 10:50 am in Room 32 of the Psychology building on Mondays, Wednesdays, and Fridays.
For section 2UG/GR, there are in-person meetings at 01:00 pm - 01:50 pm in Room 32 of the Psychology building on Mondays, Wednesdays, and Fridays.
There will be asynchronous lecture videos with links posted on the Course Website (in videos directory of the course_content repository). See the Instructional Activities section below for more details.
All students are expected to read the course notes, watch the lecture videos, complete assignments, and fully participate in class regularly. Course content - syllabus, notes, videos, homework, exams, projects, and weekly schedules, discussion board (as Issues tab) - will be found on the Course Website via the course_content repository. Do check the course_content repo often for updates and announcements. Students are encouraged to pull the course_content repository daily if accessing it remotely via git.
Any and all times listed in this document are in current US Central Time. Take care to adjust clocks when daylight savings time occurs.
Office hours will be in-person and simultaneously hosted in Zoom for those who need to be remote. If a student has a specific question, but cannot attend the office hours, then that student should post their question in the Issues board. If a student wants one-on-one assistance from the course staff at an alternative time, then that student should email the course staff in order to schedule a Zoom meeting.
Instructor in-person office hours:
Tuesdays and Thursdays 1:00 pm - 3:00 pm in Room 166 Computer Applications Building (CAB)
Join Zoom Meeting https://illinois.zoom.us/j/87081323383?pwd=MkZzVVIvNTBML2FtM2ZJZEJVWXhZUT09. Meeting ID: 870 8132 3383. Password: 265779.
There is no required textbook, but students may find the texts below to be helpful. These are all free and accessible to students for further reading. The Instructor may refer to certain sections of these texts in the course content. The asterisk * means these are accessible from the University Library as E-books.
- *Data Wrangling with R. Boehmke. Springer Cham. http://www.library.illinois.edu/proxy/go.php?url=http://dx.doi.org/10.1007/978-3-319-45599-0
- *R for Data Science. Wickham and Grolemund. O’Reilly Media, Inc. https://learning.oreilly.com/library/view/-/9781491910382/?ar
- Mastering Shiny. Wickham. https://mastering-shiny.org/
- The Markdown Guide. Cone. https://www.markdownguide.org/getting-started
- RMarkdown Cheat Sheet. RStudio. https://rstudio.com/wp-content/uploads/2015/02/rmarkdown-cheatsheet.pdf
Git and GitHub
- Happy Git and GitHub for the useR. Bryan et al. https://happygitwithr.com/
The course requires students to already have a fundamental and operational understanding of R. It is recommended that students with no familiarity in R understand that this course will not discuss fundamental and operational usage of R.
- R with RStudio
- Git and GitHub
- Step 1. Download and Install Git
- Step 2. Create a GitHub account if you don’t have one already and Sign into GitHub
- Step 3. Click here to enroll in STAT 440 course organization which also creates student’s own individual repo
- Make sure your Git is updated to the latest version. If any of the above is not clear, please watch this video for more explanation.
- Zoom video teleconferencing software with functioning Webcam and Microphone https://illinois.zoom.us/
Below is a calendar of topics and tentative assignment deadlines.
|Week||2022 Dates||Topics Covered|
|01||08/22 - 08/26||Introduce the course and software - Markdown, R/RStudio/RMarkdown and Git/GitHub, Git/GitHub tips|
|02||08/29 - 09/02||Loops and conditional execution, Apply family of functions, Vectorization, User-defined functions|
|03||09/05 - 09/09||Labor Day on Monday September 05 (no class and no office hours), What is data, Structures of data, delimiters, and file extensions, Accessing and importing data, Exporting data, Handling dates and times|
|04||09/12 - 09/16||Assigning objects, Accessing and importing data via web scraping, Accessing and importing data via an API|
|05||09/19 - 09/23||Arranging data, Reshaping data, Data expansion, Data reduction|
|06||09/26 - 09/30||Regular expression and string manipulation, Summarizing data, Combining data|
|07||10/03 - 10/07||Midterm Exam 01 begins Wednesday October 05 and ends Friday October 07, Focus on Midterm Exam|
|08||10/10 - 10/14||Validating data, Cleaning data|
|09||10/17 - 10/21||SQL queries and sub-queries|
|10||10/24 - 10/28||Data visualization using base R|
|11||10/31 - 11/04||Data visualization using tidyverse|
|12||11/07 - 11/11||General Election Day on Tuesday November 08 (no class and no office hours), Midterm Exam 02 begins Wednesday November 09 and ends Friday November 11, Focus on Midterm Exam|
|13||11/14 - 11/18||Shiny apps and dashboards|
|14||11/21 - 11/25||Fall Break|
|15||11/28 - 12/02||Final Project Pre-Feedback Submission due at 11:59 pm Friday December 02, Intro to data anonymization|
|16||12/05 - 12/09||Reading Day - December 08 (no class and no office hours), Focus on Final Project and Final Exam|
|17||12/12 - 12/16||Final Exam for section 01 on Thursday December 15 8:00am-11:00am, Final Exam for section 02 on Wednesday December 14 7:00pm-10:00pm, Final Project Post-Feedback Submission due at 11:59 pm Friday December 16|
15 Piloted Practices: 10 points total (1 point each)
- PP01-PP16 are weekly comprehensive assignments due on Mondays, but only 10 of 15 are required to be completed. No student can earn more than 10 points for these assignments. Tokens are inadmissible on this assignment.
2 Lab Assignments: 8 points total (4 points each)
- Lab01 series begins Week 03 (September 07) and ends Week 06 (September 30). Each student will be a driver only once in this series. Tokens are admissible on this assignment, but must be used within one week of original deadline.
- Lab02 series begins Week 08 (October 12) and ends Week 11 (November 04). Each student will be a driver only once in this series. Tokens are admissible on this assignment, but must be used within one week of original deadline.
2 Midterm Exams: 20 points total (10 points each)
- Midterm Exam 01 is a two-day exam (October 05 and October 07). One day contains conceptual problems. Another day contains applied problems. Tokens are admissible on this assignment, but must be used within one week of original deadline.
- Midterm Exam 02 is a two-day exam (November 09 and November 11). One day contains conceptual problems. Another day contains applied problems. Tokens are admissible on this assignment, but must be used within one week of original deadline.
1 Final Project Pre-Feedback Submission: 13 points total
- Deadline for R file pre-feedback submission into project repo is 11:59 pm Friday December 02. Grading rubric provided in course_content repo. Tokens are inadmissible on this assignment.
1 Final Project Post-Feedback Submission: 4 points total
- Deadline for R file post-feedback submission into project repo is 11:59 pm Friday December 16. Grading rubric provided in course_content repo. Tokens are inadmissible on this assignment.
1 Final Exam: 20 points total
- Three-hour period allotted. Contains conceptual and applied problems. Tokens are admissible on this assignment, but must be used within one week of original deadline. Final Exam for section 01 is Thursday December 15 8:00am-11:00am. Final Exam for section 02 is Wednesday December 14 7:00pm-10:00pm.
Course Total Points: 75 points
Potential 1 for Bonus Points: Of the three tokens given to each student, if a student physically returns their unused token(s) at the end of the semester, then 1 point per token is added to overall grade.
Potential 2 for Bonus Points: Individual passengers are rewarded 0.1 bonus points for each lab in which they are present and actively assisting their station’s driver.
When computing final grades, students can add up their scores on the assignments. The resulting sum will determine which letter grade they earn when the course is completed. There are no $+/-$ letter grades in this course.
|Lower bound||Upper bound||Letter grade|
|67.5 points||75 points||A|
|60 points||67.499 points||B|
|52.5 points||59.999 points||C|
|45 points||52.499 points||D|
|0 points||44.999 points||F|
Students should read the course notes, watch the lecture videos, and attempt the assignments. If or when students get stuck, then they should ask questions in the i) Issues Board, ii) Office Hours, or iii) via email (preference in this order). In addition to lecture videos and office hours, the following activities and tools will be useful for students.
The course notes perform the duty of a textbook for this course. Yes, there is a lot of information in the notes, but it is useful to read it for the important parts and return to it for details after attempting the assignments.
The course announcements page is the landing page within the course_content repository. This page is a rendering of the README.md file. In this announcements page, students can find a proposed weekly schedule, links to files, information about assignment deadlines, and other important course reminders.
This discussion board, which exists as a tab on the course_content repository, is one of the best ways to communicate with classmates and course staff. Questions can be seen quickly and receive a rapid response. Students are encouraged to use this board, but there is no requirement to participate in the discussion board.
Do use the board to openly discuss ideas about the course such as questions about content, deadlines, homework, notes, data, etc. If a student specifically wants the course staff to respond, then student should use the mention
@staff when posting in the board. The things discussed here should be of a non-personal and non-private matter. If student has a personal or private matter to discuss with the Instructor, please send an email to email@example.com. Additionally, the conversation in the discussion board should be respectful of people’s differences and cannot be used to speak negatively about anyone or harm anyone.
The course staff will view and respond to content on Tuesdays and Thursdays (at a minimum). The course staff can be expected to spend at least 30 minutes on Tuesdays and Thursdays monitoring the Issues.
Tokens will be used this semester as limited second-chance opportunities to complete assignments without severe penalties. These tokens are intended to help students who may benefit from more opportunities to improve their learning. Each student will be given exactly three tokens: gold, silver, and bronze. Gold tokens may be used to drop an assignment from your grade. This means that the original grade is not used to calculate student’s current grade. Silver tokens may be used to reassess for a grade replacement. This means that a student will take a new version of the assignment such that the new grade will replace the original grade. Bronze tokens may be used to reassess such that the new assignment grade will be averaged with the original assignment grade for a new current grade. Tokens are admissible on labs and exams, but inadmissible on piloted practices and final projects. If a student wants to use a token, they must inform the Instructor during Instructor’s office hours within 7 days (i.e. 1 week) of the returned grade of their original assignment. Used token must be physically returned to Instructor at the time of token usage request. Reassessments will take place during Instructor’s office hours within 7 days of the returned grade of the student’s original assignment pending the student informs the Instructor of their usage of a silver or bronze token. Of the three tokens given to each student, if a student returns their unused token(s) at the end of the semester, then 1 point per token is added to overall grade as bonus points. If a student loses their tokens, then no new tokens will be given, and that student forfeits all possible token usage. In other words, without a physical token, students may not benefit from reassessment and dropped assignment.
Regarding grade requests and disputes about problems missed on various assignments, please email the Instructor with your requests and disputes within 14 days (i.e. 2 weeks) of your grade being returned.
These are guided comprehension assignments to be completed by each student as an individual as late as one hour before their class begins on Mondays. There are 15 piloted practices for the semester but only 10 are required for all students. The shortname for these assignments is PP. They are numbered by their corresponding week number. For example, PP04 corresponds to week 04 piloted practice.
These assignments are to be submitted in the student’s repository, which exists within the illinois-stat440 organization in GitHub. See Course Website for web links. Tokens are inadmissible on these assignments.
These are lab sessions that contain 4 problems and are due at the end of the class period on Mondays and Wednesdays by the “driver.” The course is located in an iFLEX classroom, which allows for ease of communication, collaboration, and displaying content on large screens at stations. Each week (beginning in Week 03), randomly chosen students (“drivers”) will complete the lab assignment seated at specified stations, while the remaining students (“passengers”) at the stations will help the drivers by giving them ideas and advice on how to complete the problems. Drivers must submit their labs. Passengers are not allowed to type on driver’s laptops. All students must bring their laptops to class each day. Lab assignments are intended to push students to apply concepts covered in the course notes and lecture videos and encourage students to work together as a team. Each student must complete two lab assignments as the driver by the respective lab due dates. Individual passengers are rewarded 0.1 bonus points for each lab in which they are present and actively assisting their station’s driver. Late submissions of lab assignments will not be accepted. There will be no make-ups for any missed labs. This policy applies to any students who add the course late to their registration. Tokens are admissible on these assignments. Review Tokens description in above section.
The midterm is one at-home exam with 15 problems. The exam will be (open notes, open book) and take up to 2 days to complete. The midterm must be submitted on the Course Website via a student’s repo. The midterm exam will be graded for correctness and completeness. Students can expect the final exam to include a structure similar to homework with a mixture of completion, correct/incorrect, and open-ended questions. Late submissions on any Midterm Exam will not be accepted or graded. There will be no make-ups for any missed Midterm Exam. Tokens are admissible on these assignments. Review Tokens description in above section.
The final exam is one at-home exam with 20 problems. The exam will be (open notes, open book) and take up to 2 days to complete. The final exam will be graded for correctness and completeness. Students can expect the final exam to include a structure similar to homework and the midterm exam with a mixture of completion, correct/incorrect, and open-ended questions. Students should not expect solutions to be provided for the final exam. Late submissions on any Final Exam will not be accepted or graded. There will be no make-ups for any missed Final Exam. Tokens are admissible on these assignments. Review Tokens description in above section.
The Final Project in this course is the creation of a single Shiny app or dashboard in R. This Shiny app or dashboard is an opportunity for students to demonstrate the statistical data management concepts covered this semester and apply them along with version control for collaboration. This final project will have two submissions. The first submission is the group’s well-thought-out and successfully running Shiny app or dashboard. This pre-feedback submission will be graded carefully and worth more points. The pre-feedback submission’s deadline is December 02. With a deadline of December 16, the second, or post-feedback, submission is worth less points but should represent the best version of the Shiny app or dashboard. Students will review the feedback from the course staff and incorporate that into the second submission of the Shiny app or dashboard. Students should read the accompanying grading rubrics for both submissions. Students are allowed to work together on the final project but only in groups of two. If working in groups, a new repo specific to your group will be created in GitHub to permit collaboration. Ideas and coding must be your own code. Late contributions will not be accepted. There will be no make-ups for any missed Final Project. Tokens are inadmissible on these assignments.
For more information about Shiny apps and how to create one, check out the following videos and docs:
How to start a Shiny app https://vimeo.com/rstudioinc/review/131218530/212d8a5a7a/#t=0m0s
Getting started with Shiny dashboards https://rstudio.github.io/shinydashboard/get_started.html
Effective Reactive Programming Part 1 https://rstudio.com/resources/shiny-dev-con/reactivity-pt-1-joe-cheng/
Effective Reactive Programming Part 2 https://rstudio.com/resources/shiny-dev-con/reactivity-pt-2/
Interactive Graphics with Shiny https://resources.rstudio.com/webinars/interactive-graphics-winston
Understanding Shiny Modules https://resources.rstudio.com/shiny-developer-conference/shinydevcon-modules-garrettgrolemund-1080p
Debugging Techniques https://resources.rstudio.com/shiny-developer-conference/shinydevcon-debugging-jonathanmcpherson-1080p
Welcome to Shiny https://shiny.rstudio.com/tutorial/written-tutorial/lesson1/
To obtain disability-related academic adjustments and/or auxiliary aids, students with disabilities must contact the course instructor and the Disability Resources and Educational Services (DRES) as soon as possible. To contact DRES, student may visit 1207 S. Oak St., Champaign, call 333-4603, e-mail firstname.lastname@example.org or go to the DRES website at http://disability.illinois.edu/
It is expected that all students abide by the campus regulations on academic integrity http://studentcode.illinois.edu/article1_part4_1-401.html. Intentional violations of academic integrity can be found at http://studentcode.illinois.edu/article1_part4_1-402.html and include, but are not limited to, copying any part of another student’s assignment and allowing another student to copy any part of student’s own assignment.
We have been asked by Public Safety https://police.illinois.edu/emergency-preparedness/run-hide-fight/ to share the following information in case of weather or security emergencies. See the links:
The University of Illinois is committed to combating sexual misconduct. Faculty and staff members are required to report any instances of sexual misconduct to the University’s Title IX and Disability Office. In turn, an individual with the Title IX and Disability Office will provide information about rights and options, including accommodations, support services, the campus disciplinary process, and law enforcement options.
A list of the designated University employees who, as counselors, confidential advisors, and medical professionals, do not have this reporting responsibility and can maintain confidentiality, can be found at https://wecare.illinois.edu/resources/students/#confidential. Other information about resources and reporting is available at https://wecare.illinois.edu.
The Instructor reserves the right to make any changes considered to be academically advisable. Any changes will be announced in class and on the Course Website. It is the student’s responsibility to attend the class and keep track of the changes.