Data Science I: Foundations

Fall 2019
Georgetown University


Course Outline

Course Schedule



Week Date Topic
1 Sept. 4 Reproducibility
2 Sept. 9 Version Control
2 Sept. 11 Python Notebooks
3 Sept. 16 Data Types in Python
3 Sept. 18 Control Sequences, Iteration, and Functions
4 Sept. 23 Comprehensions and Generators
4 Sept. 25 Numpy
5 Sept. 30 Data Wrangling with Pandas (part 1)
5 Oct. 2 Data Wrangling with Pandas (part 2)
6 Oct. 7 Exploratory Data Analysis
6 Oct. 9 Vectors
7 Oct. 16 Trigonometry of Vectors
8 Oct. 21 Matrix Transformations
8 Oct. 23 Matrix Operations and Inversions
9 Oct. 28 Linear Regression
9 Oct. 30 Eigen Decompositions
10 Nov. 4 Decompositions in Practice
10 Nov. 6 Differentiation
11 Nov. 11 Optimizing Univariate Functions
11 Nov. 13 Optimizing Multivariate Functions
12 Nov. 18 Gradient Descent
12 Nov. 20 Constrained Optimization
13 Nov. 25 Probability
14 Dec. 2 Bayes Rule
14 Dec. 4 Simulation and Sampling
15 Dec. 9 Wrap Up
Final Dec. 20 12:30pm-2:30pm - Location CBN 205





Syllabus







Recitation



Recitation meets most weeks on Mondays from 5:00 to 5:50 in Car Bar 203. Below is the schedule for when there is a lab.

Lab No.  Date
1 09-09 Lab
2 09-16 Lab
09-23 Makeup Class (class does not meet earlier in the day)
09-30 Attend the Data Science in Action Seminar
3 10-07 Lab
10-14 No Lab - Mid-Semester Holiday
4 10-21 Lab
5 10-28 Lab
6 11-04 Lab (Q&A with the TA - Attendance Optional)
11-11 Attend the Data Science in Action Seminar
11-18 Attend the Data Science in Action Seminar
7 11-25 Lab
8 12-02 Lab
9 12-09 Lab (Review - Attendance Optional)





Contact


Eric Dunford (Professor)


Andrea Quevedo (Teaching Assistant)





Lecture Materials



Reproducibility

Version Control

Jupyter Notebooks

  • Lecture Notebook(s)

Data Types in Python

  • Lecture Slides
  • Lecture Notebook(s)
    • Data Types
    • Manipulating Data Structures
    • [Supplement] Strings and Dates
  • Lab Material

Control Sequences, Iteration, and Functions

  • Lecture Notebook(s)
    • Control Sequences and Iteration
    • Functions

Comprehensions and Generators

  • Lecture Notebook(s)
    • Comprehensions, Generators, and Itertools
    • File Management

Numpy

  • Lecture Notebook(s)

Data Wrangling with Pandas (part 1)

  • Lecture Notebook(s)

Data Wrangling with Pandas (part 2)

  • Lecture Notebook(s)

Exploratory Data Analysis

  • Lecture Notebook(s)
  • Lab Materials

Vectors

  • Lecture Notebook(s)

Trigonometry of Vectors

  • Lecture Notebook(s)

Matrix Transformations

  • Lecture Notebook(s)
  • Lab Materials

Matrix Operations and Inversions

  • Lecture Notebook(s)
    • Matrix Operations
    • Matrix Inversions

Linear Regression

  • Lecture Notebook(s)
  • Lab Materials

Eigen Decompositions

  • Lecture Notebook(s)

Decompositions in Practice

  • Lecture Notebook(s)
    • Covariance and Correlation Matrices
    • Latent Variables
    • Data Reduction

Differentiation

  • Lecture Notebook(s)
    • Derivatives
    • Rules of Differentiation

Optimizing Univariate Functions

  • Lecture Notebook(s)

Optimizing Multivariate Functions

  • Lecture Notebook(s)

Gradient Descent

  • Lecture Notebook(s)

Constrained Optimization

  • Lecture Notebook(s)
    • Gradient Descent (Part 2)
    • Constrained Optimization
    • [Supplement] Unpacking the Lagrange Multiplier

Probability

  • Lecture Notebook(s)

Bayes Rule & Naive Bayes Algorithm

  • Lecture Notebook(s)

Simulation and Sampling

  • Lecture Notebook(s)
    • Sampling
    • Simulation