# palashbadjatya01/dataexplorationprojects architecture

> Architecture diagram of the GitHub repository palashbadjatya01/dataexplorationprojects, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-06-19). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/palashbadjatya01/dataexplorationprojects
- Repository: https://github.com/palashbadjatya01/dataexplorationprojects

## Overview

1. This repository is not a single application; it is a collection of independent Python/Jupyter data-analysis projects. Each subdirectory is a self-contained notebook workspace focused on one dataset or one analytics exercise.

2. The top-level architecture is very simple: a shared `README.md`, a Conda environment file (`environment.yml`), and multiple project folders. There is no shared application code, service layer, or cross-project package structure.

3. The main execution unit across the repo is the notebook. Every project folder centers on a `.ipynb` file that likely contains data loading, cleaning, exploration, visualization, and conclusions in one place rather than separating those concerns into modules.

4. The data layer is file-based and local. Inputs are stored directly in each project folder as CSV, JSON, or GeoJSON files, which means each notebook reads from static datasets rather than a database, API, or message stream.

5. `CrimeDataExploration` is a spatial/data exploration project using `actes-criminels.csv` and `limitespdq.geojson`. That combination implies a workflow that joins tabular crime records with geographic boundaries for map-based analysis or district-level aggregation.

6. `DataOutlierDetectionsCSV` is a CSV-focused analysis notebook. Its structure suggests a pipeline of inspecting a raw tabular dataset, identifying anomalous values, and validating outlier detection logic inside the notebook.

7. `DynamicPricingTransformationJSON` is the JSON-based counterpart. The main flow here is likely parsing nested JSON, transforming it into analysis-friendly tabular form, and then evaluating pricing-related patterns or rules.

8. `UIUCBuildingInventoryExploration` is another tabular exploration project, using `building_inventory.csv`. This appears to be a standalone dataset analysis notebook centered on building inventory attributes and descriptive statistics or filtering.

9. `DashboardBuildingVSSqFootage` is the closest thing in the repo to an interactive reporting layer. It contains a single notebook, so the “dashboard” is notebook-driven rather than a deployed web app or separate BI service.

10. `problemStatement.txt` files in some folders indicate that these notebooks are assignments or guided exercises. Architecturally, those text files define the analysis objective, while the notebook implements the solution and narrative.

11. There is no shared persistence or backend infrastructure. The repository’s data flow is: static raw dataset files in each folder → notebook reads and transforms them → notebook outputs charts, tables, and interpretation.

12. The environment boundary is managed through `environment.yml`, and the Binder badge in the README shows the repo is intended to be reproducible in a hosted notebook runtime. That matters because it suggests the notebooks are meant to run in a consistent Python environment rather than as installed packages.

13. Overall, the repository should be diagrammed as a set of parallel, isolated analytics workspaces under one roof, not as a layered system. The key architectural elements are notebooks, local raw datasets, and a reproducible Python environment for interactive exploration.

Main entry points: [`README.md`](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/README.md) (README), [`environment.yml`](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/environment.yml) (Env), [`CrimeDataExploration/data_exploration.ipynb`](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/CrimeDataExploration/data_exploration.ipynb) (Crime notebook), [`DataOutlierDetectionsCSV/data_exploration.ipynb`](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DataOutlierDetectionsCSV/data_exploration.ipynb) (Outlier notebook)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_shared["Shared"]
  node_readme["README<br/>docs<br/>[README.md]"]
  node_env["Env<br/>runtime<br/>[environment.yml]"]
end

subgraph group_crime["Crime Exploration"]
  node_crime_nb["Crime notebook"]
  node_crime_csv[("Crime CSV<br/>dataset")]
  node_crime_geo[("District map<br/>geojson<br/>[limitespdq.geojson]")]
  node_crime_ps["Prompt<br/>assignment"]
end

subgraph group_outlier["Outlier Detection"]
  node_outlier_nb["Outlier notebook"]
  node_outlier_csv[("Raw CSV<br/>dataset<br/>[raw_data.csv]")]
  node_outlier_ps["Prompt<br/>assignment"]
end

subgraph group_pricing["Dynamic Pricing"]
  node_pricing_nb["Pricing notebook"]
  node_pricing_json[("Raw JSON<br/>dataset<br/>[raw_data.json]")]
  node_pricing_ps["Prompt<br/>assignment"]
end

subgraph group_uiuc["UIUC Inventory"]
  node_uiuc_nb["Inventory notebook"]
  node_uiuc_csv[("Inventory CSV<br/>dataset")]
end

subgraph group_dashboard["Dashboard"]
  node_dash_nb["Dashboard notebook"]
end

node_env -.->|"runtime"| node_crime_nb
node_env -.->|"runtime"| node_outlier_nb
node_env -.->|"runtime"| node_pricing_nb
node_env -.->|"runtime"| node_uiuc_nb
node_env -.->|"runtime"| node_dash_nb
node_readme -->|"documents"| node_env
node_crime_csv -->|"input"| node_crime_nb
node_crime_geo -->|"input"| node_crime_nb
node_crime_ps -->|"guides"| node_crime_nb
node_outlier_csv -->|"input"| node_outlier_nb
node_outlier_ps -->|"guides"| node_outlier_nb
node_pricing_json -->|"input"| node_pricing_nb
node_pricing_ps -->|"guides"| node_pricing_nb
node_uiuc_csv -->|"input"| node_uiuc_nb
node_readme -.->|"catalogs"| node_crime_nb
node_readme -.->|"catalogs"| node_outlier_nb
node_readme -.->|"catalogs"| node_pricing_nb
node_readme -.->|"catalogs"| node_uiuc_nb
node_readme -.->|"catalogs"| node_dash_nb

click node_readme "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/README.md"
click node_env "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/environment.yml"
click node_crime_nb "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/CrimeDataExploration/data_exploration.ipynb"
click node_crime_csv "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/CrimeDataExploration/raw_data/actes-criminels.csv"
click node_crime_geo "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/CrimeDataExploration/raw_data/limitespdq.geojson"
click node_crime_ps "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/CrimeDataExploration/problemStatement.txt"
click node_outlier_nb "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DataOutlierDetectionsCSV/data_exploration.ipynb"
click node_outlier_csv "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DataOutlierDetectionsCSV/raw_data.csv"
click node_outlier_ps "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DataOutlierDetectionsCSV/problemStatement.txt"
click node_pricing_nb "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DynamicPricingTransformationJSON/data_exploration.ipynb"
click node_pricing_json "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DynamicPricingTransformationJSON/raw_data.json"
click node_pricing_ps "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DynamicPricingTransformationJSON/problemStatement.txt"
click node_uiuc_nb "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/UIUCBuildingInventoryExploration/building_exploration.ipynb"
click node_uiuc_csv "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/UIUCBuildingInventoryExploration/building_inventory.csv"
click node_dash_nb "https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DashboardBuildingVSSqFootage/badjatya-palash-homework6.ipynb"

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_readme,node_env toneBlue
class node_crime_nb,node_crime_csv,node_crime_geo,node_crime_ps toneAmber
class node_outlier_nb,node_outlier_csv,node_outlier_ps toneMint
class node_pricing_nb,node_pricing_json,node_pricing_ps toneRose
class node_uiuc_nb,node_uiuc_csv toneIndigo
class node_dash_nb toneTeal
```

## Components

### Shared

Repository-level documentation and environment

- [README](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/README.md): docs · Repository overview and reproducibility notes · `README.md`
- [Env](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/environment.yml): runtime · Conda environment for all notebooks · `environment.yml`

### Crime Exploration

Spatial crime analysis workspace

- [Crime notebook](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/CrimeDataExploration/data_exploration.ipynb): notebook · Crime data exploration and spatial analysis · `CrimeDataExploration/data_exploration.ipynb`
- [Crime CSV](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/CrimeDataExploration/raw_data/actes-criminels.csv): dataset · Tabular crime records · `CrimeDataExploration/raw_data/actes-criminels.csv`
- [District map](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/CrimeDataExploration/raw_data/limitespdq.geojson): geojson · Police district boundaries for spatial joins · `CrimeDataExploration/raw_data/limitespdq.geojson`
- [Prompt](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/CrimeDataExploration/problemStatement.txt): assignment · Analysis prompt for the crime exercise · `CrimeDataExploration/problemStatement.txt`

### Outlier Detection

CSV anomaly analysis workspace

- [Outlier notebook](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DataOutlierDetectionsCSV/data_exploration.ipynb): notebook · CSV outlier detection workflow · `DataOutlierDetectionsCSV/data_exploration.ipynb`
- [Raw CSV](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DataOutlierDetectionsCSV/raw_data.csv): dataset · Tabular input for anomaly analysis · `DataOutlierDetectionsCSV/raw_data.csv`
- [Prompt](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DataOutlierDetectionsCSV/problemStatement.txt): assignment · Analysis prompt for the outlier exercise · `DataOutlierDetectionsCSV/problemStatement.txt`

### Dynamic Pricing

JSON transformation workspace

- [Pricing notebook](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DynamicPricingTransformationJSON/data_exploration.ipynb): notebook · JSON transformation and pricing analysis · `DynamicPricingTransformationJSON/data_exploration.ipynb`
- [Raw JSON](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DynamicPricingTransformationJSON/raw_data.json): dataset · Nested JSON input for transformation · `DynamicPricingTransformationJSON/raw_data.json`
- [Prompt](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DynamicPricingTransformationJSON/problemStatement.txt): assignment · Analysis prompt for the dynamic pricing exercise · `DynamicPricingTransformationJSON/problemStatement.txt`

### UIUC Inventory

Building inventory exploration workspace

- [Inventory notebook](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/UIUCBuildingInventoryExploration/building_exploration.ipynb): notebook · Building inventory exploration · `UIUCBuildingInventoryExploration/building_exploration.ipynb`
- [Inventory CSV](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/UIUCBuildingInventoryExploration/building_inventory.csv): dataset · Building inventory data · `UIUCBuildingInventoryExploration/building_inventory.csv`

### Dashboard

Notebook-based reporting workspace

- [Dashboard notebook](https://github.com/palashbadjatya01/dataexplorationprojects/blob/main/DashboardBuildingVSSqFootage/badjatya-palash-homework6.ipynb): notebook · Notebook-driven building vs square footage dashboard · `DashboardBuildingVSSqFootage/badjatya-palash-homework6.ipynb`

## Connections

- Env → Crime notebook: runtime · Conda environment used to run the notebook
- Env → Outlier notebook: runtime · Conda environment used to run the notebook
- Env → Pricing notebook: runtime · Conda environment used to run the notebook
- Env → Inventory notebook: runtime · Conda environment used to run the notebook
- Env → Dashboard notebook: runtime · Conda environment used to run the notebook
- README → Env: documents · Repository documentation describes reproducible environment
- Crime CSV → Crime notebook: input · Crime records are read and analyzed in the notebook
- District map → Crime notebook: input · Geographic boundaries support spatial aggregation and mapping
- Prompt → Crime notebook: guides · Problem statement defines the analysis task
- Raw CSV → Outlier notebook: input · Raw tabular data feeds outlier detection steps
- Prompt → Outlier notebook: guides · Problem statement defines the exercise
- Raw JSON → Pricing notebook: input · Nested JSON is transformed inside the notebook
- Prompt → Pricing notebook: guides · Problem statement defines the exercise
- Inventory CSV → Inventory notebook: input · Building inventory dataset is explored in the notebook
- README → Crime notebook: catalogs · Repository README points to project workspaces
- README → Outlier notebook: catalogs · Repository README points to project workspaces
- README → Pricing notebook: catalogs · Repository README points to project workspaces
- README → Inventory notebook: catalogs · Repository README points to project workspaces
- README → Dashboard notebook: catalogs · Repository README points to project workspaces
