Lesson Plans

Below are brief outlines of the content covered in each unit. Each week, we will introduce two units in lecture and practice the associated topics in discussion.

Lecture and discussion will include practice problems in the form of Google Colabs, which allow you to write and execute code in your browser.

For all content links and the course sechdule, see the ‘Home’ tab.

Unit 1: “Hello World”

  • Fundamentals of Code - Introduction to programming concepts
  • Python Overview
    • Including comparative analysis with other programming languages

Unit 2: Variables, Operators and Conditionals

  • Introduction to Variables
    • Python data types
    • Print statements and type checking
  • Variable Naming Conventions
    • Camel case and snake case formatting
  • Operators:
    • Arithmetic operations and shortcuts (+=, -=)
    • Comparison operators
    • Logical operators

Unit 3: Lists

  • List Fundamentals
    • Dynamic arrays, mixed data types
    • Properties: mutable, ordered, allows duplicates
  • Core Operations
    • Creating and accessing elements
    • Adding, updating, and removing items
    • List iteration
    • Nested lists

Unit 4: Loops

  • While Loops
    • Basic implementation
    • Infinite loop concepts
  • For Loops
    • Using range() function
    • Iteration syntax (for _ in _)
  • Control Statements
    • Break and continue statements

Unit 5: Functions

  • Function Structure
    • Signatures and type declarations
    • Parameter handling
    • Return values
  • Memory Management
    • Pass by value vs. reference
  • Function Types
    • Return vs. non-return functions

Unit 6: Numpy

  • Python Package Fundamentals
    • Introduction to packages
    • NumPy’s purpose and advantages
  • Array Operations
    • NumPy vs. Python arrays
    • Indexing and slicing techniques
    • Mathematical operations (+, -, ==)
  • Built-in Functions
    • Common functions (.mean(), .sum())
    • Documentation reading exercise

Unit 7: Pandas

  • Introduction to Pandas
    • Core concepts
    • Comparison with NumPy
  • Working with Data Frames
    • Creation methods
    • Data import techniques
  • Data Access and Manipulation
    • iloc and loc indexing
    • Boolean filtering

Unit 8: Data Analysis and Representation

  • Introduction to Plotly
    • Basic graph creation
    • Function parameters
  • Variable Classifications
    • Categorical vs. Numerical data
  • Graph Varieties
    • Bar, Chart, Violin
    • Box and Scatter plots
  • Data Representation
    • Appropriate graph selection
    • Best practices for data visualization

Unit 9: ML Basics

  • Linear Regression
    • Fundamental concepts and implementation
  • K-Nearest Neighbors (KNN)
    • Basic principles and applications
  • Scikit-learn Framework
    • Introduction to ML library
    • Practical implementation