Lectures

Week   Topic(s)                                                     Slide(s)                                 Additional Resources
Week I
21.02
Chapter 9 - GUI Programming Using Tkinter

Chapter 15 - GUI and Event Driven Programming
Ch 9: ppt | pdf


Ch 9: html
Python GUI Examples (Tkinter Tutorial)  (html)
Python Tkinter (html)
Python - GUI Programming (Tkinter) (html)
Introduction To GUI With Tkinter In Python (html)
Tkinter Tutorial For Beginners (html)
Tkinter tutorial - zetcode (html)

Week II
28.02
Chapter 13 - Files and Exception Handling


Chapter 11 - Files

Ch 13: ppt | pdf


Ch 11: html

w3schools - File Handling (html)
programiz - File I/O (html)

w3schools - Try Except (html)
programiz - Exception Handling (html)
Week III
07.03
Chapter 15 - Recursion

Chapter 16 - Recursion
Ch 15: ppt | pdf

Ch 16: html
programiz - Recursion (html)

realpython (html)
       
Week IV
14.03
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
 
Week V
21.03
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
 
Week V
21.03
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 VI Arrray-Oriented Programming with NumPy (html)

Introduction to NumPy

 
- tutprialspoint NumPy Tutorial (html)
- Datacamp Python Numpy Array Tutorial (html)
- The Ultimate Beginner’s Guide to NumPy (html)
- A Complete Step-By-Step Numpy Tutorial (html)
Week VII Quiz    
Week VIII Midterm Week    
Week IX & X

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 XI Ramadan Holiday    
Week XII - 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 XIII
- 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 XIV
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 XV
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 You’ll Ever Need (html)

- Dimensionality Reduction Algorithms: Strengths and Weaknesses (html)
- Choosing the right estimator (html)
Week XV Chapter 16 - Deep Learning (html) - Deep Learning Tutorial (html)
- A Guide to Deep Learning by YN (html)
-CNN Tutorial (html)
Week XVI
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
   - Grades (html)