Practical Business Python

Taking care of business, one python script at a time

Article Roadmap

The roadmap is a guide to finding and reading all the articles on the site. All articles are grouped and ordered in a more natural progression than the publish date. This is a good starting point for the first time reader or a returning reader trying to find some specific content.


Mon 15 November 2021
16 Reasons to Use VS Code for Developing Jupyter Notebooks
Tue 16 February 2021
Efficiently Cleaning Text with Pandas
Mon 18 January 2021
Case Study: Automating Excel File Creation and Distribution with Pandas and Outlook
Mon 11 January 2021
Pandas DataFrame Visualization Tools


Mon 09 November 2020
Comprehensive Guide to Grouping and Aggregating with Pandas
Mon 19 October 2020
Reading Poorly Structured Excel Files with Pandas
Mon 12 October 2020
Case Study: Processing Historical Weather Pattern Data
Mon 21 September 2020
PB Python Article Roadmap
Mon 14 September 2020
Reading HTML tables with Pandas
Mon 17 August 2020
Taking Another Look at Plotly
Tue 02 June 2020
sidetable - Create Simple Summary Tables in Pandas
Mon 04 May 2020
Exploring an Alternative to Jupyter Notebooks for Python Development
Mon 30 March 2020
Using WSL to Build a Python Development Environment on Windows
Tue 18 February 2020
Python Tools for Record Linking and Fuzzy Matching
Mon 20 January 2020
Using Markdown to Create Responsive HTML Emails


Mon 23 December 2019
Creating Interactive Dashboards from Jupyter Notebooks
Mon 16 December 2019
Finding Natural Breaks in Data with the Fisher-Jenks Algorithm
Mon 02 December 2019
Building a Windows Shortcut with Python
Tue 26 November 2019
Tips for Selecting Columns in a DataFrame
Mon 11 November 2019
Book Review: Machine Learning Pocket Reference
Mon 28 October 2019
Cleaning Up Currency Data with Pandas
Mon 14 October 2019
Binning Data with Pandas qcut and cut
Tue 17 September 2019
Happy Birthday Practical Business Python!
Mon 26 August 2019
Combine Multiple Excel Worksheets Into a Single Pandas Dataframe
Mon 29 July 2019
Automated Report Generation with Papermill: Part 2
Mon 22 July 2019
Automated Report Generation with Papermill: Part 1
Mon 08 July 2019
Build a Celebrity Look-Alike Detector with Azure’s Face Detect and Python
Mon 03 June 2019
Evangelizing Python for Business
Mon 13 May 2019
Stylin’ with Pandas
Mon 18 February 2019
Monte Carlo Simulation with Python
Mon 28 January 2019
Updated: Using Pandas To Create an Excel Diff
Mon 07 January 2019
Using The Pandas Category Data Type


Tue 20 November 2018
Building a Repeatable Data Analysis Process with Jupyter Notebooks
Mon 08 October 2018
Pandas Crosstab Explained
Mon 06 August 2018
New Plot Types in Seaborn’s Latest Release
Mon 02 July 2018
Automating Windows Applications Using COM
Tue 29 May 2018
Book Review: Machine Learning with Python Cookbook
Mon 07 May 2018
Building Bullet Graphs and Waterfall Charts with Bokeh
Mon 30 April 2018
Choosing a Python Visualization Tool
Mon 26 March 2018
Overview of Pandas Data Types
Tue 20 February 2018
Intro to pdvega - Plotting for Pandas using Vega-Lite
Mon 29 January 2018
Building a PDF Splitter Application
Tue 02 January 2018
Interactive Visualization of Australian Wine Ratings


Mon 27 November 2017
Using Python’s Pathlib Module
Mon 09 October 2017
Creating Interactive Visualizations with Plotly’s Dash Framework
Mon 28 August 2017
Building a Bullet Graph in Python
Mon 31 July 2017
Pandas Grouper and Agg Functions Explained
Mon 03 July 2017
Introduction to Market Basket Analysis in Python
Tue 23 May 2017
How Accurately Can Prophet Project Website Traffic?
Tue 25 April 2017
Effectively Using Matplotlib
Tue 04 April 2017
Understanding the Transform Function in Pandas
Mon 06 March 2017
Forecasting Website Traffic Using Facebook’s Prophet Library
Tue 21 February 2017
Populating MS Word Templates with Python
Mon 06 February 2017
Guide to Encoding Categorical Values in Python
Tue 17 January 2017
Data Science Challenge - Predicting Baseball Fanduel Points


Mon 19 December 2016
Building a Financial Model with Pandas - Version 2
Mon 21 November 2016
Building a Financial Model with Pandas
Tue 06 September 2016
Creating Pandas DataFrames from Lists and Dictionaries
Mon 29 August 2016
Introduction to Data Visualization with Altair
Tue 23 August 2016
Lessons Learned from Analyze This! Challenge
Wed 15 June 2016
Excel “Filter and Edit” - Demonstrated in Pandas
Mon 16 May 2016
Sharing Your Python Case Studies
Wed 06 April 2016
Interactive Data Analysis with Python and Excel
Tue 26 January 2016
Learn More About Pandas By Building and Using a Weighted Average Function


Wed 30 December 2015
Getting to the “Plateau of Productivity” with Python
Mon 07 December 2015
Creating Advanced Excel Workbooks with Python
Mon 26 October 2015
Pandas 0.17 Release and Other Notes
Mon 14 September 2015
Adding a Simple GUI to Your Pandas Script
Mon 17 August 2015
Creating Powerpoint Presentations with Python
Mon 13 July 2015
Best Practices for Managing Your Code Library
Thu 02 July 2015
Visualizing Google Forms Data with Seaborn
Tue 09 June 2015
Collecting Data with Google Forms and Pandas
Sun 17 May 2015
Notebooks Now on Github and Other Updates
Mon 04 May 2015
Tips for Customizing Your IPython and Pandas Display
Wed 08 April 2015
Improving Pandas Excel Output
Mon 23 March 2015
Generating fake data with barnum
Mon 16 February 2015
Creating PDF Reports with Pandas, Jinja and WeasyPrint
Mon 02 February 2015
Generating Excel Reports from a Pandas Pivot Table
Tue 20 January 2015
Overview of Python Visualization Tools
Tue 06 January 2015
Web Scraping - It’s Your Civic Duty


Mon 29 December 2014
Pandas Pivot Table Explained
Wed 17 December 2014
Combining Data From Multiple Excel Files
Mon 08 December 2014
Common Excel Tasks Demonstrated in Pandas - Part 2
Sun 30 November 2014
Common Excel Tasks Demonstrated in Pandas
Tue 18 November 2014
Creating a Waterfall Chart in Python
Sun 09 November 2014
Using Pandas To Create an Excel Diff
Sun 26 October 2014
Simple Graphing with IPython and Pandas
Tue 14 October 2014
Simple Interactive Data Analysis with Python
Sun 05 October 2014
Using Sets for Data Analysis
Sat 27 September 2014
Configuring Pelican Static Blog
Wed 24 September 2014
The Technology Behind PB Python