STATS 607A: Programming and Numerical Methods in
Statistics
Fall 2015
Class Information
- Days & Time: Mondays & Wednesdays, 4 pm -- 5:30 pm
- Location: B760 East Hall
- Description: This is the first part (Part A) of a two part course. Part A focuses on building good programming skills using the Python language and learning to use them for solving complex data analysis problems. Prior exposure to some programming is recommended. Prior exposure to probability and statistics (at an advanced undergraduate level) is required. We will begin by introducing basics of Python (functions, recursion, objects, exceptions, types, data structures). We will then learn about some Python packages useful for data analysis: numpy, scipy, matplotlib and pandas. Part B, offered in the following semester, will focus on numerical methods in linear algebra.
- Textbook: There’s no official textbook. I will list resources for each lecture below.
- Ctools: You should access the Ctools class page for this course frequently. It will contain important announcements and posted homework assignments.
- Course end date: This is a half-semester course and will end on October 21, 2015.
Instructor Information
Name: Ambuj Tewari
Office: 454 West Hall
Office Hours: By appointment
Email: tewaria@umich.edu
GSI Information
Name: Yun-Jhong Wu
Office Hours and Location: Mondays 7:30-8:30pm and Wednesdays 7:30-8:30pm in SLC (1720 Chemistry)
Email: yjwu@umich.edu
Grading
The final grade in the course will be determined by your scores in 3 assignments (each has 25% weight) and a final exam (25% weight).
- Final Exam (Covers material from the entire course):
Python Notebooks
The notebooks containing lecture material are all in a github repository:
https://github.com/ambujtewari/stats607a-fall2015/wiki
The notebooks themselves are just static documents (in JSON format) but clicking on the links will show you properly rendered notebooks thanks to the awesome rendering service at http://nbviewer.ipython.org/.
Python Distribution
Make sure you have Anaconda 2.3.0 installed on your personal computer or on your account on the Bayes servers. Anaconda 2.3.0 comes with Python 2.7 and all packages required for this class.
Schedule
Week 0 (Sep 9)
Week 1 (Sep 14, 16)
Week 2 (Sep 21, 23)
- Lecture 04: Numpy Basics
- Reading Assignment: Read Numpy basics (only first 5 sections, i.e., Data types through Broadcasting)
Week 3 (Sep 28, 30):
Week 4 (Oct 5, 7):
Week 5 (Oct 12, 14):
Week 6 (Oct 21): [Oct 19 is during Fall Study Break]