ECE 20875: Python for Data Science
Fall 2020 Flipped Classroom
Quick Links
- Piazza
- ECE Data Science Github
- Scholar Computing
- Syllabus
- Online Lectures and Office/TA Hours: See Piazza
- Instructions on using Discord
Course Information
This course introduces Python programming to students through data science problems. Students learn Python concepts as well as introductory data science topics, and use their knowledge of Python to implement data analyses. More detailed information can be found in the course syllabus. Due to the complications surrounding COVID-19, this semester is being offered in a flipped classroom format.- Lecture times: 7:00-8:15pm MW
- Recitation times: 10:30-11:45am TR (Section I), 11:30am-12:20pm MWF (Section II)
- Office hours: 1:00-2:00pm, 5:00-8:00pm M-F
- Communication: This course will rely heavily on Piazza for official announcements, student questions, and answers to questions.
Lecture Materials
- Week 1 (8/24-8/30)
- 8/24: Course introduction.
- 8/26: Python basics and version control. See slides and notebook (PDF version).
- Week 2 (8/31-9/6)
- 8/31: Functions and data structures. See slides posted 8/26, and the associated notebook/PDF. Also see the notebook on data structures (PDF version).
- 9/2: Histograms.
- Week 3 (9/7-9/13)
- 9/7: Probability and random variables.
- 9/9: Probability and random variables (continued). See (slightly updated) slides from 9/7.
- Week 4 (9/14-9/20)
- Week 5 (9/21-9/27)
- Week 6 (9/28-10/4)
- 9/28: Hypothesis testing (continued) and review for Exam 1.
- 9/30: Exam #1.
- Week 7 (10/5-10/11)
- Week 8 (10/12-10/18)
- 10/12: File I/O and bash. See slides on file I/O, lecture notes on bash, and bash files used in class.
- 10/14: Started regression. See slides.
- Week 9 (10/19-10/25)
- Week 10 (10/26-11/1)
- 10/26: Regression continued: Polynomial regression, regularization, and cross validation. See slides from 10/14, and sklearn notebook from 10/21.
- 10/28: n-grams and natural language processing. See slides, and notebook on nltk (PDF version and universal_decl_of_human_rights.txt file).
- Week 11 (11/2-11/8)
- Week 12 (11/9-11/15)
- Week 13 (11/16-11/22)
- Week 14 (11/23-11/29)
Assignments
- Homework 1: Python and Git basics, due 9/4. (Solution)
- Homework 2: Functions and data structures, due 9/11. (Solution)
- Homework 3: Histograms and distributions, due 9/18. (Solution)
- Homework 4: Higher order functions, due 9/25. (Solution)
- Homework 5: Hypothesis testing and confidence intervals, due 10/9. (Solution)
- Homework 6: Regular expressions, due 10/16. (Solution)
- Homework 7: Bash, due 10/23. (Solution)
- Homework 8: Regression, due 10/30. (Solution)
- Homework 9: NLP, due 11/13.
- Homework 10: Objects/classes and kMeans, due 11/20.
Mini-project
Instructions here. Due 12/4.
Exams
Practice Exams
- Spring 2020 Exam 1 (Solutions): For Fall 2020 Exam 1, all problems are fair game.
- Fall 2019 Exam 2 (Solutions): For Fall 2020 Exam 2, all problems are fair game. Problems 1 and 5.2 from Fall 2019 Exam 1 (Solutions) are also fair game.
Instructors
Chris Brintoncgb 'at' purdue 'dot' edu
MSEE 342
Qiang Qiu
qqiu 'at' purdue 'dot' edu
MSEE 358
Graduate TAs
Somosmita MitraJiaqi Guo
Serena Nicoll
Undergraduate TAs
Julia TaylorHarsh Ajwani
Joseph Bushagour
Jhen Ruei Chen
Kevin Chen
Lohith Roy Chittineni
Ethan Glasser
Shan Huang
Rufat Imanov
Kevin Kwon
Sneha Mahapatra
Marvin H Mui
Adam Popper
Aagam Shah
Runjia Shen
Vikram Srivastava
Aathavan Thevasenapathy
Erik Wilson
Kyle Wolf
Minjun Zhang