STAT 545A Course syllabus: 2023/2024

How to make a clean and modern data analysis, Part I.


Duration: Tue, Sep 05 - Thu, Oct 19

  • Introduction to R and the RStudio IDE: scripts, the workspace, RStudio Projects, daily workflow
  • Generate reports from R scripts and R Markdown
  • Coding style, file and project organization
  • Data frames or “tibbles” are the core data structure for data analysis: care for them with the tidyverse
  • Data visualization with ggplot2
  • Version control with Git; collaboration via GitHub

Teaching Team

Instructor: Dr. Lucy Gao

Teaching Assistants:

  • Asfar Lathif
  • Erick Isaac Navarro Delgado
  • Emily Brown

Meeting Schedule

Tuesdays and Thursdays 0900-1030 PT in Mathematics Annex 1100

Be sure to bring a CHARGED laptop to every class!

There will always be TA’s available during class to help students with the live coding exercises.

Class Weekday Date Topic
1 Thu Sep 7 Introduction to STAT545 and R
2 Tue Sep 12 R Markdown and Reproducibility
3 Thu Sep 14 Collaboration and Version Control
4 Tue Sep 19 Data Wrangling Part I
5 Thu Sep 21 Data Wrangling Part I
6 Tue Sep 26 Plotting Part I
7 Thu Sep 28 Plotting Part II
8 Tue Oct 3 Tidy data I
9 Thu Oct 5 Tidy data II
10 Tue Oct 10 The model-fitting paradigm in R
11 Thu Oct 12 NO CLASS (Make-Up Monday)
12 Tue Oct 17 Special data types: factors and dates
13 Thu Oct 19 File input/output and tibble joins


Deliverable Percent Grade Description
Class worksheets 15 Autograded walkthroughs to guide student learning.
Mini data analysis 50 Students write their own mini data analysis.
Collaborative project 35 Team project intended for practicing version control and collaboration.

More details can be found on the course dashboard.

Auditing Students

Auditing students are expected to complete all assessments (i.e. the deliverables above). The difference between enrolling for credit is that auditing students are graded on each assessment on a pass/fail basis.



STAT 545 uses Slack for course communications. Note that the messages sent on Slack are stored on servers outside of Canada.

STAT 545 asks students to work on Please produce work knowing that the material you put on GitHub will be stored on servers outside of Canada.


In addition to UBC’s Campus-wide Policies and Regulations, STAT 545A and STAT 545B adopt the following policies.


Official course communications will occur on the #announcements channel in Slack. You can expect to receive an invitation to the Slack workspace by email, but if you haven’t received this, please let the instructor know.

The teaching team can’t guarantee that they will be able to respond to student messages outside of typical workday hours (0900-1700 PT). So, please be mindful of a 17:00 PT cutoff on Fridays when asking course related questions.

Please read this before messaging the teaching team.

Late Policy

A late submission is defined as any work submitted after the deadline. For a late submission, the student will receive a warning for the first occurrence, and will receive a grade of 0 for subsequent occurrences.

Academic Concession

UBC no longer requires a doctor’s note (or supporting documentation) for academic concession. A self-declaration will suffice – here is a template you can use. Please submit this to the instructor.

Examples of “conflicting responsibility” are conference travel and time-sensitive field work.

If you arrange to have an assignment submitted late, you may not be able to receive feedback from your peers.


Plagiarism, which is intellectual theft, occurs where an individual submits or presents the oral or written work of another person as his or her own and can include:

  • multiple students submitting the same response
  • copying from sources without citing them
  • copying verbatim (word-for-word) from source and citing, but failing to make it explicit that this is a quotation (quotations should be used only rarely, if at all)

Students are responsible for ensuring that any work submitted does not constitute plagiarism. Students who are in any doubt as to what constitutes plagiarism should consult their instructor before handing in any assignments.

For more information see the UBC Academic Misconduct policies.

Code Plagiarism

Students must correctly cite any code that has been authored by someone else or by the student themselves for other assignments. Cases of code plagiarism may include, but are not limited to:

  • the reproduction (copying and pasting) of code with none or minimal reformatting (e.g., changing the name of the variables)
  • the translation of an algorithm or a script from a language to another
  • the generation of code by automatic code-generations software

An “adequate acknowledgement” requires a detailed identification of the (parts of the) code reused and a full citation of the original source code that has been reused.

UBC’s Policies and Resources to Support Student Success

UBC provides resources to support student learning and to maintain healthy lifestyles but recognizes that sometimes crises arise and so there are additional resources to access including those for survivors of sexual violence. UBC values respect for the person and ideas of all members of the academic community. Harassment and discrimination are not tolerated nor is suppression of academic freedom. UBC provides appropriate accommodation for students with disabilities and for religious, spiritual and cultural observances. UBC values academic honesty and students are expected to acknowledge the ideas generated by others and to uphold the highest academic standards in all of their actions. Details of the policies and how to access support are available here.

Your personal health

If you have not yet had a chance to get vaccinated against COVID-19 or the flu, vaccines are available to you, free, and on campus. The higher the rate of vaccination in our community overall, the lower the chance of spreading disease. You are an important part of the UBC community. Please arrange to get vaccinated if you have not already done so.

If you’re sick, it’s important that you stay home – no matter what you think you may be sick with (e.g., cold, flu, other). Your precautions will help reduce risk and keep everyone safer. The structure of this class is intended to provide flexibility so that you can prioritize your health and still be able to succeed.

If you do miss class because of illness:

  • Consult the class resources on the course website,
  • Come to office hours on Zoom.
  • Use Slack to carry out discussions.

For additional information about academic concessions, see the UBC policy here:,329,0,0

Instructor health

If I (the instructor) am sick: If I am ill, then I will not come to class. If that happens, here’s what you can expect:

  • If I am well enough to teach, I will conduct virtual lectures through Zoom until I am well. If this happens, you will be tagged in an announcement via Slack with information. You can anticipate that this would very likely be a last minute announcement. Our classroom will still be available for you to sit and attend an online session, although it is recommended that you bring headphones.
  • If I am not well enough to teach, it is possible that one or more teaching assistants will take my place. But if not, we will either try to make up for lost time, make new resources to aid in your learning, or make accommodations regarding the assignments.