Getting Started
  • Overview / Student FAQ
  • Tips: How to get the most out of this course
  • Did you know that...?
  • More FAQ / Important Information
  • Installation of Anaconda
  • Opening a Jupyter Notebook
  • How to use Jupyter Notebooks
  • How to tackle Pandas Version 1.0
---- PART 1: PANDAS FROM ZERO TO HERO (BUILDING BLOCKS) ----
  • Intro to Tabular Data / Pandas
  • Download: Part 1 Course Materials
Pandas Basics (DataFrame Basics I)
  • Create your very first Pandas DataFrame (from csv)
  • Pandas Display Options and the methods head() & tail()
  • First Data Inspection
  • Built-in Functions, Attributes and Methods with Pandas
  • Make it easy: TAB Completion and Tooltip
  • First Steps
  • Explore your own Dataset: Coding Exercise 1 (Intro)
  • Explore your own Dataset: Coding Exercise 1 (Solution)
  • Selecting Columns
  • Selecting one Column with the "dot notation"
  • Zero-based Indexing and Negative Indexing
  • Selecting Rows with iloc (position-based indexing)
  • Slicing Rows and Columns with iloc (position-based indexing)
  • Position-based Indexing Cheat Sheets
  • Selecting Rows with loc (label-based indexing)
  • Slicing Rows and Columns with loc (label-based indexing)
  • Label-based Indexing Cheat Sheets
  • Indexing and Slicing with reindex()
  • Summary, Best Practices and Outlook
  • Indexing and Slicing
  • Coding Exercise 2 (Intro)
  • Coding Exercise 2 (Solution)
  • Advanced Indexing and Slicing (optional)
Pandas Series and Index Objects
  • Intro
  • First Steps with Pandas Series
  • Analyzing Numerical Series with unique(), nunique() and value_counts()
  • Analyzing non-numerical Series with unique(), nunique(), value_counts()
  • Creating Pandas Series (Part 1)
  • Creating Pandas Series (Part 2)
  • Indexing and Slicing Pandas Series
  • Sorting of Series and Introduction to the inplace - parameter
  • nlargest() and nsmallest()
  • idxmin() and idxmax()
  • Manipulating Pandas Series
  • Pandas Series
  • Coding Exercise 3 (Intro)
  • Coding Exercise 3 (Solution)
  • First Steps with Pandas Index Objects
  • Creating Index Objects from Scratch
  • Changing Row Index with set_index() and reset_index()
  • Changing Column Labels
  • Renaming Index & Column Labels with rename()
  • Pandas Index objects
  • Coding Exercise 4 (Intro)
  • Coding Exercise 4 (Solution)
DataFrame Basics II
  • Intro
  • Filtering DataFrames by one Condition
  • Filtering DataFrames by many Conditions (AND)
  • Filtering DataFrames by many Conditions (OR)
  • Advanced Filtering with between(), isin() and ~
  • any() and all()
  • Removing Columns
  • Removing Rows
  • Adding new Columns to a DataFrame
  • Creating Columns based on other Columns
  • Adding Columns with insert()
  • Creating DataFrames from Scratch with pd.DataFrame()
  • Adding new Rows (hands-on approach)
  • DataFrame Basics II
  • Coding Exercise 5 (Intro)
  • Coding Exercise 5 (Solution)
Manipulating Elements in a DataFrame / Slice +++Important, know the Pitfalls!+++
  • Intro
  • Best Practice (How you should do it)
  • Chained Indexing: How you should NOT do it (Part 1)
  • Chained Indexing: How you should NOT do it (Part 2)
  • View vs. Copy
  • Simple Rules what to do when...
  • Manipulating DataFrames / Slices
  • Coding Exercise 6 (Intro)
  • Coding Exercise 6 (Solution)
DataFrame Basics III
  • Intro
  • Sorting DataFrames with sort_index() and sort_values() (Version 1.0 Update)
  • Ranking DataFrames with rank()
  • nunique() and nlargest() / nsmallest() with DataFrames
  • Summary Statistics and Accumulations
  • The agg() method
  • Coding Exercise 7 (Intro)
  • Coding Exercise 7 (Solution)
  • User-defined Functions with apply(), map() and applymap()
  • Hierarchical Indexing (Part 1)
  • Hierarchical Indexing (Part 2)
  • String Operations (Part 1)
  • String Operations (Part 2)