# thepycoach/python-for-data-science architecture

> Architecture diagram of the GitHub repository thepycoach/python-for-data-science, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/thepycoach/python-for-data-science
- Repository: https://github.com/thepycoach/python-for-data-science

## Overview

This repository is a notebook-based Python for Data Science course, not an application with a shared runtime. A learner progresses from Python and pandas fundamentals through data preparation and analysis, then applies those skills in scraping, visualization, cleaning, regression, and text-classification projects. The graph groups notebooks by instructional stage; the tree and README establish these topics, but no notebook source was available to verify detailed code-level data flow.

Main entry points: [`13.Project 4 - Text Classification`](https://github.com/thepycoach/python-for-data-science/tree/main/13.Project%204%20-%20Text%20Classification) (Text Classification Project), [`01.Python Crash Course`](https://github.com/thepycoach/python-for-data-science/tree/main/01.Python%20Crash%20Course) (Python Basics), [`02.Intro to Pandas`](https://github.com/thepycoach/python-for-data-science/tree/main/02.Intro%20to%20Pandas) (Pandas Basics), [`04.Filtering Data`](https://github.com/thepycoach/python-for-data-science/tree/main/04.Filtering%20Data) (Filtering Data)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_foundations["Python And Pandas"]
  node_python["Python Basics"]
  node_pandas["Pandas Basics<br/>[02.Intro to Pandas]"]
end

subgraph group_datawork["Data Preparation"]
  node_filter["Filtering Data<br/>[04.Filtering Data]"]
  node_extract["Data Extraction<br/>[05.Data Extraction]"]
  node_regex["Regular Expressions"]
end

subgraph group_analysis["Analysis And Visualization"]
  node_pivot["Pivot Tables<br/>[06.Pivot Table]"]
  node_groupby["Grouping And Aggregation"]
  node_merge["Merging DataFrames"]
end

subgraph group_projects["Applied Projects"]
  node_scraping["Web Scraping Project"]
  node_visualization["Visualization Project"]
  node_cleaning["Data Cleaning Project"]
  node_ml["Regression Lessons"]
  node_classification["Text Classification Project"]
end

node_learner(("Learner"))
node_reviews[("IMDb Reviews Dataset")]

node_learner -->|"studies"| node_python
node_learner -->|"studies"| node_pandas
node_learner -->|"practices"| node_filter
node_learner -->|"practices"| node_extract
node_learner -->|"practices"| node_regex
node_learner -->|"studies"| node_pivot
node_learner -->|"studies"| node_groupby
node_learner -->|"studies"| node_merge
node_learner -->|"applies skills"| node_scraping
node_learner -->|"applies skills"| node_visualization
node_learner -->|"applies skills"| node_cleaning
node_learner -->|"studies"| node_ml
node_learner -->|"applies skills"| node_classification
node_classification -.->|"requires dataset"| node_reviews

click node_python "https://github.com/thepycoach/python-for-data-science/tree/main/01.Python%20Crash%20Course"
click node_pandas "https://github.com/thepycoach/python-for-data-science/tree/main/02.Intro%20to%20Pandas"
click node_filter "https://github.com/thepycoach/python-for-data-science/tree/main/04.Filtering%20Data"
click node_extract "https://github.com/thepycoach/python-for-data-science/tree/main/05.Data%20Extraction"
click node_regex "https://github.com/thepycoach/python-for-data-science/tree/main/10.Regular%20Expressions"
click node_pivot "https://github.com/thepycoach/python-for-data-science/tree/main/06.Pivot%20Table"
click node_groupby "https://github.com/thepycoach/python-for-data-science/tree/main/08.GroupBy%20and%20Aggregate%20Function"
click node_merge "https://github.com/thepycoach/python-for-data-science/tree/main/09.Merging%20and%20Concatenating%20DataFrames"
click node_scraping "https://github.com/thepycoach/python-for-data-science/tree/main/03.Project%201%20-%20Web%20Scraping%20with%20Pandas"
click node_visualization "https://github.com/thepycoach/python-for-data-science/tree/main/07.Project%202%20-%20Data%20Visualization"
click node_cleaning "https://github.com/thepycoach/python-for-data-science/tree/main/11.Project%203%20-%20Data%20Cleaning"
click node_ml "https://github.com/thepycoach/python-for-data-science/tree/main/12.Machine%20Learning"
click node_classification "https://github.com/thepycoach/python-for-data-science/tree/main/13.Project%204%20-%20Text%20Classification"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_python,node_pandas toneBlue
class node_filter,node_extract,node_regex,node_reviews toneAmber
class node_pivot,node_groupby,node_merge toneMint
class node_scraping,node_visualization,node_cleaning,node_ml,node_classification toneRose
class node_learner toneIndigo
```

## Components

### Python And Pandas

- [Python Basics](https://github.com/thepycoach/python-for-data-science/tree/main/01.Python%20Crash%20Course): `01.Python Crash Course`
- [Pandas Basics](https://github.com/thepycoach/python-for-data-science/tree/main/02.Intro%20to%20Pandas): `02.Intro to Pandas`

### Data Preparation

- [Filtering Data](https://github.com/thepycoach/python-for-data-science/tree/main/04.Filtering%20Data): `04.Filtering Data`
- [Data Extraction](https://github.com/thepycoach/python-for-data-science/tree/main/05.Data%20Extraction): `05.Data Extraction`
- [Regular Expressions](https://github.com/thepycoach/python-for-data-science/tree/main/10.Regular%20Expressions): `10.Regular Expressions`

### Analysis And Visualization

- [Pivot Tables](https://github.com/thepycoach/python-for-data-science/tree/main/06.Pivot%20Table): `06.Pivot Table`
- [Grouping And Aggregation](https://github.com/thepycoach/python-for-data-science/tree/main/08.GroupBy%20and%20Aggregate%20Function): `08.GroupBy and Aggregate Function`
- [Merging DataFrames](https://github.com/thepycoach/python-for-data-science/tree/main/09.Merging%20and%20Concatenating%20DataFrames): `09.Merging and Concatenating DataFrames`

### Applied Projects

- [Web Scraping Project](https://github.com/thepycoach/python-for-data-science/tree/main/03.Project%201%20-%20Web%20Scraping%20with%20Pandas): `03.Project 1 - Web Scraping with Pandas`
- [Visualization Project](https://github.com/thepycoach/python-for-data-science/tree/main/07.Project%202%20-%20Data%20Visualization): `07.Project 2 - Data Visualization`
- [Data Cleaning Project](https://github.com/thepycoach/python-for-data-science/tree/main/11.Project%203%20-%20Data%20Cleaning): `11.Project 3 - Data Cleaning`
- [Regression Lessons](https://github.com/thepycoach/python-for-data-science/tree/main/12.Machine%20Learning): `12.Machine Learning`
- [Text Classification Project](https://github.com/thepycoach/python-for-data-science/tree/main/13.Project%204%20-%20Text%20Classification): `13.Project 4 - Text Classification`

### Other components

- **Learner**
- **IMDb Reviews Dataset**

## Connections

- Learner → Python Basics: studies
- Learner → Pandas Basics: studies
- Learner → Filtering Data: practices
- Learner → Data Extraction: practices
- Learner → Regular Expressions: practices
- Learner → Pivot Tables: studies
- Learner → Grouping And Aggregation: studies
- Learner → Merging DataFrames: studies
- Learner → Web Scraping Project: applies skills
- Learner → Visualization Project: applies skills
- Learner → Data Cleaning Project: applies skills
- Learner → Regression Lessons: studies
- Learner → Text Classification Project: applies skills
- Text Classification Project → IMDb Reviews Dataset: requires dataset
