Syllabus

Course details

  • M & Th
  • January 19–April 26, 2021
  • 11:20 - 12:45 EST

Contacting me

E-mail, message on Canvas, or set up a meeting for my student hours. I want to help you succeed!

Course Description

Purpose: Develop your competence, creativity, and confidence as a data scientist working with R.

Classes cover multiple data science methods focused on collecting, organizing, and analyzing data to build models and communicate analytical results in a reproducible manner. You will use R tidyverse packages to acquire, clean, and tidy data; develop numerical and graphical displays; write basic functions, and present/communicate your process, findings and recommendations. For the final project, you will work in a small group to complete an analysis of complex data and communicate the elements of the analysis and the results in writing and through an oral presentation.

This course provides experience in the use of tidyverse packages ggplot2, dplyr, tidyr, stringr, readr, forcats, and lubridate, and the use of R Markdown and RStudio. It also assumes some basic knowledge of statistical analysis.

Course Objectives

Upon completing this course, students will be able to:

  1. Develop a regular workflow to execute reproducible research and analysis using R and R Studio and communicate the results and implications to others.
  2. Install and use R packages for specific applications
  3. Import data from a variety of external sources
  4. Use tidyverse capabilities to transform data to support analysis in R
  5. Use tidyverse graphical tools to visualize and understand data
  6. Write basic R functions using control and data structures
  7. Employ R functions to conduct statistical analysis and inference
  8. Generate research or analytical reports and presentations using R Markdown and basic LaTeX capabilities.
  9. Deliver an oral presentation describing your data science analysis to an audience.

Course Prerequisites

STAT 412 requires two mathematics or statistics courses at or above the 200-level as a prerequisite. STAT 612 requires successful completion of, or concurrent enrollment in, STAT 614: Statistical Methods.

Course Textbook

The textbook for this course is available via a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 License, which means we can use it for free online. We’ll be reading R for Data Science: Visualize, Model, Transform, and Import Data by Hadley Wickham and Garrett Grolemund

R4DS Textbook

Computing Environment

  • Access to a computer with an operating system capable of running R 4.0
  • Access to reliable internet capable of supporting Zoom video sessions

You will do all of your analysis with the open source (and free!) programming language R. You will use RStudio as the main program to access R. Think of R as an engine and RStudio as a car dashboard—R handles all the calculations and the actual statistics, while RStudio provides a nice interface for running R code.

R is free, but it can sometimes be a pain to install and configure. To make life easier, you can (and should!) use the free RStudio.cloud service, which lets you run a full instance of RStudio in your web browser. This means you won’t have to install anything on your computer to get started with R! We will have a shared class workspace in RStudio.cloud that will let you quickly copy templates for labs and problem sets.

You can find instructions for installing R, RStudio, and all the tidyverse packages here.

Online help

Data science and statistical programming can be difficult. Computers are stupid and little errors in your code can cause hours of headache (even if you’ve been doing this stuff for years!).

Fortunately there are tons of online resources to help you with this. Two of the most important are StackOverflow (a Q&A site with hundreds of thousands of answers to all sorts of programming questions) and RStudio Community (a forum specifically designed for people using RStudio and the tidyverse (i.e. you)).

If you use Twitter, post R-related questions and content with #rstats. The community there is exceptionally generous and helpful.

Searching for help with R on Google can sometimes be tricky because the program name is, um, a single letter. Google is generally smart enough to figure out what you mean when you search for “r scatterplot,” but if it does struggle, try searching for “rstats” instead (e.g. “rstats scatterplot”).

Expectations of this Course

Be nice. Be honest. Don’t cheat.

Students are expected to:

  • Attend all class meetings. Regular attendance contributes greatly to your performance in this course. If on the rare occasion you have to miss class, you are responsible for any materials and learning outcomes from missed class. Please obtain and review the materials from the missed class BEFORE the next class meeting.
  • Engage online with instructor and peers; Ask Questions and volunteer answers to questions and to show your code during class. Respond to emails within 2 days
  • Review assignments early. Do not wait until the day before the assignments are due to assess their difficulty. As class gets closer my ability to help troubleshoot is reduced.
  • Use the packages and methods taught in this class. There are usually multiple ways to solve a problem. Creativity is encouraged; excessive use of Base R or other packages is not and will be penalized in assignment solutions. No assignment will require the use of a package not discussed in this class or in the notes.
  • Search for solutions. Data scientists must learn to discover solutions for themselves. You may have to research (e.g., use Google, stackoverflow, etc.) to do your assignments. The course books and lectures will NOT provide every single detail you need to know to do an assignment.
  • Ask Questions after a reasonable amount of troubleshooting and searching. Do not spend hours on a single issue with your code. It is okay to ask me or others about an issue as long as you do not just copy someone else’s solution. All work must be your own.
  • Submit assignments by the corresponding deadline. I will accept late or redone assignments but there will be a scoring penalty.

We will also follow American University’s Code of Conduct.

Violation of AU’s Academic Integrity Code will result in an F in the course and possible disciplinary action.1 All violations will be formally reported to the Dean of Students.

The instructor will:

  • respond to emails within 24 hours
  • grade assignments within 4 days of the assignment deadline.

This syllabus reflects a plan for the semester. Deviations may become necessary as the semester progresses.

Student hours

Please watch this video:

Student hours are set times dedicated to all of you (most professors call these “office hours”; I don’t2). This means that I will be in my office at home (wistfully) waiting for you to come by talk to me remotely with whatever questions you have. This is the best and easiest way to find me and the best chance for discussing class material and concerns.

Because of the pandemic, we cannot meet in person. I can meet you online via Zoom Make an appointment with me here. You can also find me through e-mail and on Canvas.

Zoom

We will be operating in a distributed online classroom this semester. While much of the material will be the same as in a face-to-face classroom several special considerations to maximize the learning opportunities for each student are discussed below.

Use of Zoom Video Conference Capabilities

We will use the Zoom video conference tool for all class meetings and office hours. To have full access to the capabilities, sign into Zoom before each class using your @american.edu email address (Not your @student.american.edu address).

Use the Zoom Test Meeting Room to test your connection.

There are multiple links below where you can access Zoom student tutorials to learn about the tool, how to access your meeting room, and share your screen.

Recording

  • I will be recording most of each class period using Zoom. The recordings will be available the day after class.
    Recordings may be used for other sections of this course.
  • I will usually announce when I start and when I stop recording. During recording you may ask questions at any time, but they will be recorded. I will also ask students to share their screens during labs or exercises which may be recorded. I also encourage questions before the recordings start and after they stop as well in case you have a question but don’t want to be recorded.

Recording Policies

Faculty may record classroom lectures or discussions for pedagogical use, future student reference, or to meet the accommodation needs of students with a documented disability. These recordings are limited to personal use and may not be distributed, shared, sold, or posted on social media outlets without the written permission of faculty.

Students are not permitted to make visual or audio recordings, including live streaming, of classroom lectures or any class related content, using any type of recording devices (e.g., smart phone, computer, digital recorder, etc.) unless prior permission from the instructor and all students in the class. If permission is granted, personal use and sharing of recordings and any electronic copies of course materials (e.g., digital handouts, formulas, lecture notes and any classroom discussions online or otherwise) is limited to the personal use of students registered in the course and for educational purposes only, even after the end of the course. Exceptions will be made for students who present a signed Letter of Accommodation from the Academic Support and Access Center. Unauthorized downloading, file sharing, distribution of any part of a recorded lecture or course materials, solutions, or using information for purposes other than the student’s own learning may be deemed a violation of American University’s Student Conduct Code (Links to an external site.) and subject to disciplinary action (see Student Conduct Code VI. Prohibited Conduct). Using the Camera

I will keep my camera on during class. I encourage you to turn yours on when you are speaking, but you are not required to do so. If you choose to use your camera, please check your background to ensure it is appropriate for sharing with others.

Microphones

Please keep your microphone on mute unless you are speaking. If you forget, I will probably mute it for you to reduce background noise and potential audio feedback (if you are using your computer speakers). However, you can unmute to ask a question at any time or “raise your hand.”

Chat Pane

I will try to check the chat as I’m teaching, but if I miss something feel free to speak up or raise your hand.

Presenter Privileges

All students will have presenter privileges. This means you can share your screen with the group. That is often helpful to show a solution to an exercise or lab or help debug some code. It is likely that you will share you screen more than once with the course during the semester - practice this and make sure your desktop is appropriate.

Breakout Rooms

Zoom allows me to create breakout rooms where the class is divided into groups, each in their “own room” for collaboration. We will do this for labs and potentially for project meetings. I can also create an individual breakout room to troubleshoot an issue with your code.

Assignments and grades

You can find descriptions for all the assignments on the assignments page.

Assignment Points Percent
Labs 15 15.0%
Assignments 45 45.0%
Final project 40 40.0%
Total 100 -
Grade Range Grade Range
A 93 to 100 C+ 77 to 79.99
A- 90 to 92.99 C 70 to 76.99
B+ 87 to 89.99 D 60 to 69
B 83 to 86.99 F < 59.99
B- 80 to 82.99

Important pep talk!

I promise you can succeed in this class.

Learning R can be difficult at first—it’s like learning a new language, just like Spanish, French, or Chinese. Hadley Wickham—the chief data scientist at RStudio and the author of some amazing R packages you’ll be using like ggplot2made this wise observation:

It’s easy when you start out programming to get really frustrated and think, “Oh it’s me, I’m really stupid,” or, “I’m not made out to program.” But, that is absolutely not the case. Everyone gets frustrated. I still get frustrated occasionally when writing R code. It’s just a natural part of programming. So, it happens to everyone and gets less and less over time. Don’t blame yourself. Just take a break, do something fun, and then come back and try again later.

Even experienced programmers and evaluators find themselves bashing their heads against seemingly intractable errors. If you’re finding yourself taking way too long hitting your head against a wall and not understanding, take a break, talk to classmates, e-mail me, etc.

Alison Horst: Gator error

Mental Health

Learning during a pandemic

Life absolutely sucks right now. None of us is really okay. We’re all just pretending.

You most likely know people who have lost their jobs, have tested positive for COVID-19, have been hospitalized, or perhaps have even died. You all have increased (or possibly decreased) work responsibilities and increased family care responsibilities—you might be caring for extra people (young and/or old!) right now, and you are likely facing uncertain job prospects (or have been laid off!).

I’m fully committed to making sure that you learn everything you were hoping to learn from this class! I will make whatever accommodations I can to help you finish your exercises, do well on your projects, and learn and understand the class material. Under ordinary conditions, I am flexible and lenient with grading and course expectations when students face difficult challenges. Under pandemic conditions, that flexibility and leniency is intensified.

If you tell me you’re having trouble, I will not judge you or think less of you. I hope you’ll extend me the same grace.

Please sign up for a time to meet with me during student hours at https://calendly.com/kelseygonzalez/. I’m also available through e-mail. I want you to learn lots of things from this class, but I primarily want you to stay healthy, balanced, and grounded during this crisis.

Counseling Services

Life at GSU can be complicated and challenging (especially during a pandemic!). You might feel overwhelmed, experience anxiety or depression, or struggle with relationships or family responsibilities. Student Counseling Center provides confidential support for students who are struggling with mental health and emotional challenges. Getting help is a smart and courageous thing to do.

Special needs

Students who wish to request accommodation for a disability may do so by registering with the Provost’s office. Students with special needs should then make an appointment with me during the first week of class to discuss any accommodations that need to be made. However, this course has been designed to be maximally inclusive and will hopefully accomodate many different abilities.


  1. So seriously, just don’t cheat or plagiarize!↩︎

  2. There’s fairly widespread misunderstanding about what office hours actually are! Many students often think that they are the times I shouldn’t be disturbed, which is the exact opposite of what they’re for!↩︎