List of Contents


You are expected to have programming experience at the level of CS 50 or above, and statistics knowledge at the level of Stat 100 or above (Stat 110 recommended). HW0 is designed to test your knowledge on the prerequisites. Successful completion of this assignment will show that this course is suitable for you. HW0 will not be graded but you are required to submit to enroll in the class.


We will be using Python 3 run on Jupyter Notebooks. You can access the notebook viewer either in your own machine by installing the Anaconda Platform which includes Jupyter/IPython as well all packages that will be required for the course, or by using the SEAS JupyterHub from Canvas. More details in class.

Course Activities

The course is structured in three different types of activities that repeat themselves each week and they are: Lectures, Labs, and Sections.

  1. Lectures are held on Mon and Wed from 1:30-2:45 pm in Northwest Building, Lecture Hall B-103. Attendance is mandatory for FAS students and for DCE students recorded lectures will be available and must be visioned within 2 days after the lectures. There will be quizzes at the end of each lecture to assess the understanding of the material that will help us identify gaps. Lectures will be recorded and made available real time for DCE students and 24 hours later for in-campus students via Canvas.

  2. Labs are held on Thur 4:30-6:00 pm and Fri 10:30-11:45 am in Pierce 301. The two labs have identical contents and you should plan to attend one of the two. Attendance is optional, however it is strongly encouraged. Labs are designed as hands-on activities and are useful to practice with problems similar to the homework. Labs will be videotaped only for distant students.

  3. Sections are supplementary activities led by teaching fellows to elaborate upon the lectures material. There are two types of sections:

    • 3a. Standard Sections are held on Monday and will cover a blend of lecture material and practice problems.
    • 3b. Advanced Sections are held on Wednesday and will cover advanced topics about mathematical underpinnings of the methods presented in lecture and lab. The Advanced Section material is required for AC209A students.

Recommended Textbook

An Introduction to Statistical Learning by James, Witten, Hastie, Tibshirani.

The book is available here:

Free version


The final grade will be calculated using the following weights for each assignment:

Assignment Final Grade Weight
Homework 40%
Quizzes 10%
Project 50%
Total 100%


There are 9 homework to complete. There will be an initial self-assessment homework called HW0 and 8 more graded homework assignments. Some of them will be due in a week and some of them in two weeks. You have the option to work and submit the homework in pairs for all the assignments except two which you will do individually. You will be working in Jupyter Notebooks which you can run in your own environment or in the SEAS JupyterHub cloud. The homework are graded on a scale 1 to 5, where 5 is the highest grade.


There will be a quiz at the end of the class based on what was discussed in lecture. Students will have a limited amount of time to complete the quiz (DCE students will have 72 hours). 40% of the quizzes will be dropped before calculating your final grade.

Final Project

There will be a final group project (2-4 students) due during Exams period encompassing all the material learned in class.

Submitting an Assignment

Instructions for turning in assignments will be posted when the semester starts.

Grading Guidelines

Homework will be graded based on:

  1. How correct your code is and whether the cells in your notebook run (we are not troubleshooting code).
  2. How you have interpreted the results (we want text not just code).
  3. How well you present the results (as you would do in a report).

Getting Help

For questions about homework, course content, package installation, and after you have tried to troubleshoot yourselves, the process to get help is:

  1. Post the question in Piazza and hopefully your peers will answer. Note that in Piazza questions are visible to everyone. The TFs monitor the posts.
  2. Go to Office Hours, this is the best way to get help.
  3. For private matters send an email to the Helpline: The Helpline is monitored by TFs.
  4. For personal and confidential matters send an email to the instructors.

Course Policies

Collaboration Policy

We encourage you to talk and discuss the assignments with your fellow students (and on Piazza), but you are not allowed to look at any other students assignment or code outside of your pair. Discussion is encouraged, copying is not allowed. Please refer to Academic Honesty in The CS109A Grade linked here The CS109A Grade.

Late Day Policy

Homework is due on Tuesdays. You are allowed 1 late day per homework for a total of 5 late days.

Re-Grading Policy

We take great care in making sure all homework are graded properly. However if you feel that your assignment was not fairly graded you may contact the grader by emailing the helpline with subject line "Regrade HW1: Grader=johnsmith" within 48 hours of the grade release. If still unhappy with the initial response, then submit a reason via email to the Helpline with subject line "Regrade HW1: Second request" within 2 days of receiving the initial response. Important Note: once regrading is done, you may receive a grade that is higher or lower than the initial grade.

Communication from Staff to Students

Class announcements will be through Canvas. All homework and quizzes will be posted and submitted in Canvas. Also all feedback forms. Important note: make sure you have your settings set so you can receive emails from Canvas.

Academic Honesty

Ethical behavior is an important trait of a Data Scientist, from ethically handling data to attribution of code and work of others. Thus, in CS109 we give a strong emphasis to Academic Honesty. As a student your best guidelines are to be reasonable and fair. We encourage teamwork for problem sets, but you should not split the homework and you should work on all the problems together. For more detailed expectations, please refer to Academic Honesty section in The CS109A Grade link above.

Accommodations for students with disabilities

Students needing academic adjustments or accommodations because of a documented disability must present their Faculty Letter from the Accessible Education Office(AEO) and speak with Kevin by the end of the third week of the term: Friday, September 15. Failure to do so may result in us being unable to respond in a timely manner. All discussions will remain confidential.