Skip to main content
← All projects

SeoulAir

Making messy Seoul air-quality data analysis-ready.

  • Data collection
  • Data analysis
  • 2024

The problem

Seoul air-quality and weather come as scattered monthly exports with gaps and inconsistent timestamps — not something you can analyze directly.

What it does

Ingests monthly Seoul air-quality exports (PM10, PM2.5, O3, NO2, CO, SO2 by district) plus weather data, normalizes timestamps, fills gaps and merges everything into clean unified tables — then runs correlation analysis across pollutants and weather.

Stack

  • Python
  • pandas
  • NumPy
  • Matplotlib
  • Jupyter

My role

  • Data collection
  • Cleaning & gap-filling
  • Merging
  • Correlation analysis

Scattered → unified

Monthly per-district exports across two years, normalized and joined into one analysis-ready dataset.

Sensible signals

PM2.5 tracks CO and NO2 (combustion / traffic) and peaks in winter; ozone is anti-correlated with NO2 — the expected photochemistry.

Reproducible figures

A small script regenerates the charts from the cleaned sample CSV.

SeoulAir architecture — AQI + weather xlsx through pandas to Jupyter analysis and charts
How it works — AQI + weather → pandas → unified CSV → charts
Correlation heatmap of Seoul air pollutants
Pollutant correlations
Daily mean PM2.5 across Seoul over a year
Daily PM2.5 across Seoul
Monthly average PM2.5 vs PM10
Monthly PM2.5 vs PM10