Data Analysis with Python and pandas

Load, clean, explore, combine and chart real-world data in Jupyter notebooks with pandas and matplotlib, and turn what you find into a clear, honest story.

Beginner · Data Science · about 11 hours · 4 modules · certificate on completion

Taught by Marisolò Garcíà, Camilà Torresè, AI Learning Companions.

About this course

Most of a data analyst's time goes on getting data into shape and asking it the right questions. In this course you do both with pandas, Python's most widely used library for tables of data, working in Jupyter notebooks: in PyCharm, if your edition supports them, or in JupyterLab. You'll follow one fictional football season from a messy CSV file to a finished story: load the results and take stock, then clean them, removing duplicate rows, fixing team names typed five different ways, converting attendances stored as text and deciding what to do about a postponed match.

Next you'll select and filter matches, group and aggregate them, reshape each match into one row per team, and merge in each club's stadium details, building the league table from scratch. Finally you'll chart the title race with matplotlib, choose the right chart for each question, and write up what the season shows, and what it can't. Every module ends with a lab whose results you can check exactly, and the course ends with a project on a new dataset: a weekend food market's sales and the weather.

What you'll learn

  • Work in Jupyter notebooks, in PyCharm or JupyterLab, and keep an analysis reproducible
  • Load CSV data with pandas and check its size, types and gaps before trusting it
  • Clean data: missing values, numbers stored as text, dates, duplicates and inconsistent labels
  • Select, filter, group, reshape and merge data to answer questions
  • Make clear charts with matplotlib and tell an honest story with the evidence and its caveats

Skills you'll gain

pandas, Data cleaning, Data wrangling, Grouping and aggregation, Merging data, Data visualisation, matplotlib, Jupyter notebooks, Data storytelling

Tools

PyCharm, Python 3, pandas, matplotlib, Jupyter

Before you start

Basic Python: variables, lists, dictionaries, loops and functions (the Python Programming with PyCharm course covers them). You need Python 3 and PyCharm (the free version is enough); the course installs pandas, matplotlib and JupyterLab, and every dataset comes with the labs.

Modules

  1. Notebooks and loading data

    Set up a Jupyter notebook in PyCharm or JupyterLab, meet pandas' DataFrames and Series, and load a season of football results to see what's in it, and what's wrong with it.

    • Notebooks for data analysis (12 min)
    • DataFrames and Series (10 min)
    • Loading a CSV and taking a first look (12 min)
    • Hands-on lab: Take a first look at a season of results
  2. Cleaning data

    Fix the problems real data arrives with: missing values, numbers stored as text, dates, duplicates and inconsistent labels, then save a clean copy you can trust.

    • Missing values (12 min)
    • Fixing types: numbers, dates and text (12 min)
    • Duplicates and inconsistent labels (12 min)
    • Hands-on lab: Clean the season's results
  3. Selecting, grouping and merging

    Ask questions of your data: pick out rows and columns, filter with conditions, group and aggregate, reshape, and merge tables, building a league table from the raw results.

    • Selecting and filtering rows and columns (12 min)
    • Grouping and aggregating (12 min)
    • Reshaping and merging tables (14 min)
    • Hands-on lab: Build the league table
  4. Charts and stories

    Turn findings into clear charts with matplotlib, choose the right chart for each question, and tell an honest story with data: a headline, the evidence and the caveats.

    • Charts with matplotlib (12 min)
    • Choosing the right chart (10 min)
    • Telling a story with data (12 min)
    • Hands-on lab: Chart the season and tell its story

Project: Analyse a weekend food market

A fictional weekend food market has sent you two files. sales.csv records, for 16 market days in June and July 2025, how many of each product each of its five stalls sold and at what price; weather.csv gives each day's weather and top temperature. The market's organisers want to know which stalls and products earn the most, whether Sundays differ from Saturdays, and how the weather affects sales, especially the ice cream stall's. Clean the data (it has duplicate rows, a few missing figures, product names typed inconsistently and dates written day first), merge the two files, answer the questions with groupby and charts, and write a one-page story with recommendations for the organisers. Keep a cleaning log, and be honest about what 16 days of data can and can't show.

Part of

PyCharm is a trademark of JetBrains s.r.o. This course is independent: JetBrains hasn't made or endorsed it.

Start the course free