Go from raw data to interactive dashboards. This comprehensive course (Lessons 0-4) will guide you through the complete data science stack - NumPy, Pandas, Matplotlib, and Streamlit - preparing you to process data and launch your own analytical web applications.
This repository hosts "Streamlit Mission Control: From Data to Dashboard" – a hands-on course presented in a series of Jupyter Notebooks and Python scripts.
This course is for learners who understand Python basics and are ready to master the art of data analysis. We will move beyond simple scripts to building the digital infrastructure for a Mars colonization mission. You will learn to think like a data engineer: processing raw signals, visualizing environmental hazards, and building interactive control panels for mission command.
This curriculum is structured to guide you from setting up your environment to deploying a live data dashboard.
- Lesson 0: Launch Pad Preparation & Logbook - Initializing your environment, setting up Virtual Environments (venv), and mastering Jupyter Notebooks.
- Lesson 1: NumPy - The Data Engine - Understanding the high-speed motor behind scientific computing. Handling arrays, vectorization, and reshaping raw signal streams.
- Lesson 2: Pandas - The Analytical Brain - ETL processes (Extract, Transform, Load). Cleaning chaotic data, filtering samples, and aggregating mission logs into structured reports.
- Lesson 3: Matplotlib - Visual Reconnaissance - Mastering the Object-Oriented (OO) plotting approach. Creating professional line, scatter, and bar charts to visualize trends and anomalies.
- Lesson 4: Streamlit - Mission Control Dashboard - Integrating everything into a fully interactive web application. Working with layouts, widgets, session state, caching, and deploying your app to the cloud.
Upon completing this expedition, you will be able to:
- Manage data science projects using Jupyter Notebooks and Virtual Environments.
- Process numerical data efficiently using NumPy arrays and vectorization.
- Clean, filter, and analyze complex datasets using Pandas (ETL).
- Create professional, custom visualizations using Matplotlib's Object-Oriented API.
- Build interactive web apps with Streamlit to present your data.
- Implement application logic using Session State, Caching, and modular architecture.
- Deploy your dashboard to the internet via GitHub and Streamlit Cloud.
- A solid understanding of Python fundamentals (variables, data structures like lists and dictionaries, loops, and functions).
- A basic understanding of file paths and terminal commands.
- No prior knowledge of HTML/CSS is required (Streamlit handles this for you!).
- An interest in data analysis and visualization.
Here is a guide on how to download the materials. The course uses Jupyter Notebooks (.ipynb) for analysis lessons and Python scripts (.py) for the final Streamlit application.
- Go to the main page of this repository on GitHub.
- Click the green Code button.
- Select Download ZIP.
Important: Extract (unzip) the downloaded folder to a location on your computer (e.g.,
Documents/MarsMission). Do not try to run files directly inside the ZIP archive.
If you are comfortable with the terminal and want to easily update materials later:
- Open your terminal or command prompt.
- Run the following command:
git clone https://github.com/GeorgeFreedomTech/streamlit-data-analysis-and-visualisation-course.git
This is the best way to work if you want to keep everything on your own computer.
Prerequisites:
- VS Code installed.
- Python installed.
- Jupyter Extension for VS Code installed.
Steps:
- Open VS Code.
- Go to File > Open Folder... and select the folder you downloaded.
- Open any file ending in .ipynb (Lessons 0-3).
- Select your Kernel (Python environment) in the top-right corner.
- For Lesson 4 (Streamlit), you will run the
.pyfiles using the integrated terminal (streamlit run app.py).
If you cannot install Python locally, you can run the analysis notebooks (Lessons 0-3) in the cloud. Note: Running Streamlit (Lesson 4) in Colab requires specific workarounds, local setup is recommended for the final lesson.
Steps:
- Go to colab.research.google.com.
- Select the GitHub tab.
- Paste the URL of this repository.
- Click on the notebook you want to open.
- Educational Launchpad: A practical, hands-on course that transforms your Python knowledge into the ability to analyze data and build analytical tools.
- Professional Blueprint: A showcase of my teaching methodology for Data Science and Visualization, moving from raw scripts to modular, deployed applications.
- Mission Log: A source of code examples and concepts for technical articles, tutorials, and professional debriefings on social media.
- Visit my website: https://GeorgeFreedom.com
- Connect on LinkedIn: https://www.linkedin.com/in/georgefreedom/
- Let's talk: https://cal.com/georgefreedom
Copyright (c) 2025 Jiří Svoboda (George Freedom) / George Freedom Tech
This work (educational materials, including text, explanations, exercises, and accompanying code examples within the Jupyter Notebooks) is licensed under:
- Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License
We build for the future!