Week   Topic(s)                                                     Slide(s)                                 Additional Resources
Week I
Chapter 16 - Developing Efficient Algorithms [Liang]

Chapter 3 - Analysis - Problem Solving with Algorithms and Data Structures using Python [Interactive Edition]
Ch16 : ppt | pdf

Ch 03 : html
- Time complexity (html)
- Big O notation (html)
- What is Big O Notation Explained: Space and Time Complexity (html)
- Understanding Big O Notation for Data Scientists (html)
- Big-O Cheat Sheet (html)
Week II
Chapter 17 - Sorting [Liang]

Chapter 6 - Searching and Sorting - Problem Solving with Algorithms and Data Structures using Python [Interactive Edition]

Chapter 11-  Computer Science Thinking: Recursion, Searching, Sorting and Big O [Deitel]
Ch17 : ppt | pdf

Ch 06 : html

Ch 11: html
- Sorting algorithm (html)
- Sorting Algorithms in Python (html)
- Sorting Algorithms  With Python (html)
- Sorting Algorithms (html)
- Sorting Algorithms Animations (html)
Week III
IPython, Jupyter Notebooks, Review of Python Data Types and  Structures, and Libraries

IPython: Beyond Normal Python¶

- Review of Python Data Types and Stuctures (html)
- Python Libraries (html)
  - Jupyter Notebook Tutorial: The Definitive Guide (html)
- A Beginner's Tutorial to Jupyter Notebooks(html)
- Jupyter Notebook: An Introduction (html)
- Jupyter Notebook Users Manual (html)
- 28 Jupyter Notebook Tips, Tricks, and Shortcuts (html)

- Getting started with conda (html)

- A gallery of interesting Jupyter Notebooks (html)
Week IV
Arrray-Oriented Programming with NumPy (html)

Introduction to NumPy

- tutprialspoint NumPy Tutorial (html)
- Datacamp Python Numpy Array Tutorial (html)
- The Ultimate Beginners Guide to NumPy (html)
- A Complete Step-By-Step Numpy Tutorial (html)
Week V & VI

Data Manipulation with Pandas

  - Pandas Pandas Tutorial: A Complete Introduction for Beginners (html)

- EuroScipy 2016 Pandas Tutorial (html)

- w3resource Pandas Tutorial(html)

- Tutorialspoint Pandas turorial (html)

- Java T point Pandas Tutorial (html)

- geeksforgeeks Padas Tutorial (html)
Week VI - Ch 06 - Data Loading, Storage, and File Formats - Wes McKinney  (html)
- Ch 08 - Strings - A Deeper  Look - Deitel (html)
- Ch 09 - Files and Exceptions (html)
- Primer on Python Decorators (html)
- Decorators in Python (html)
  - The Best Format to Save Pandas Data (html)
- Pandas: How to Read and Write Files (html)
- Loading Data Into A Pandas Dataframe - A Performance Study  (html)
- How to read most commonly used file formats in Data Science (using Python)? (html)
- Importing Data into Pandas (html)
- Pandas IO tools (text, CSV, HDF5, ...)  (html)

- A Guide to the Newer Python String Format Techniques (html)
- Common string operations (html)
Week VII
- Matplotlib Usage Guide (html)
- Tutorialpoint- matplotlib Tutorial (html)
Ch 04 - Visualization with Matplotlib - DS Handbook
   - Introduction 04.00 (html)

Ch 10 - Review of OO Programming,
           - operator overloading,
           - names tuples
           - data classes
           - unit testing - doctest
           - Time Series and Simple Linear Regression (html)
- 6 Essential Data Visualization Python Libraries - Matplotlib, Seaborn, Bokeh, Altair, Plotly, GGplot (html)
- Tutorial: Comparing 7 Tools For Data Visualization in Python (html)
- matplolib.prg tutorials (html)
Week VIII Midterm Week
Week IX
Introduction to NLP (pdf)
Ch 12 - Natural Language Processing (NLP) (html)
- TextBlob: Simplified Text Processing (html)
- Natural Language Processing for Beginners: Using TextBlob (html)
- Introducing TextBlob (html)

- spaCy (html)
- spaCy 101: Everything you need to know (html)
- spaCy Tutorial to Learn and Master Natural Language Processing (NLP) (html)
- Natural Language Processing With spaCy in Python (html)

- Textatistic (html)
Week X-XI
Introduction to Classification, Regression and Clustering
Ch 15 - Machine Learning: Classification, Regression and Clustering (html)
  - scikit-learn Machine Learning in Python (html)

- Introduction to k-Nearest Neighbors: A powerful Machine Learning Algorithm (with implementation in Python & R) (html)
- K Nearest Neighbors - Classification (html)
- KNN Algorithm - Finding Nearest Neighbors (html)

- Model Validation Techniques (html)

- Regression Algorithms - Overview (html)
- Commonly used Machine Learning Algorithms (html)

- K-Means (html)
- The Most Comprehensive Guide to K-Means Clustering Youll Ever Need (html)

- Dimensionality Reduction Algorithms: Strengths and Weaknesses (html)
- Choosing the right estimator (html)
Week XII Chapter 16 - Deep Learning (html) - Deep Learning Tutorial (html)
- A Guide to Deep Learning by YN (html)
-CNN Tutorial (html)
Chapter 17 - Big Data: Big Data: Hadoop, Spark, NoSQL and IoT (html)   - Big Data & Analytics Tutorials (html)
- Big Data Hadoop Tutorial (html)
- NoSQL Databses (html)
- Apache Spark Tutorial (html)
- What is Big Data (html)
   - Grades (html)