Skip to content

Repository files navigation

Chile Aviation Analytics

A data science project for exploring aircraft registered in Chile's National Aircraft Registry (R.N.A.) through a Streamlit web application.

Initial Goal

The project workflow separates downloaded source files from analysis-ready data:

data/raw/        Unmodified source files (not versioned)
data/interim/    Temporary transformation outputs (not versioned)
data/processed/  Locally generated Parquet files (not versioned)
data/published/  Curated public Parquet required by the deployed app
data/sample/     Small publishable development samples (optional)
src/             Data preparation, analysis, and application code
assets/          Images, logos, and interface styles
docs/            Project methodology and documentation

Read data/README.md before adding data files.

Environment Setup

Python 3.14 and Poetry are required.

poetry install
poetry run streamlit run main.py

The application is normally available at http://localhost:8501.

Suggested Workflow

  1. Download official source files into data/raw/.
  2. Use reproducible code in src/ to validate and transform them.
  3. Store private or local results in data/processed/ as Parquet.
  4. Generate the curated deployment dataset in data/published/.
  5. Query the Parquet files with DuckDB.
  6. Present the analytical results with Streamlit.
  7. Publish large processed datasets to external storage when necessary.

Prepare the First Dataset

Place the unmodified official file at:

data/raw/2026-07-31_aeronaves_rna.csv

Then run the reproducible pipeline:

poetry run python -m src.data.prepare_aircraft

The process validates the source and generates two local tables:

data/published/aircraft.parquet
data/processed/aircraft_operators.parquet

The published table contains one row per aircraft registration and powers the deployed application. The ignored processed table preserves aircraft-operator relationships locally. Read the initial data exploration for the supporting findings and decisions.

Binary data files can change completely with every update, so Git cannot store their differences efficiently. This repository deliberately versions only the small curated aircraft.parquet file required for deployment. Source files and operator relationships remain ignored.

Quality Checks

Run the same checks used by continuous integration:

poetry check
poetry run ruff check .
poetry run ruff format --check .
poetry run pytest

GitHub Actions runs these checks on every push and pull request.

Community and Security

License

The project software is available under the MIT License. The license applies to the software and project documentation, not automatically to third-party source datasets. Dataset reuse remains subject to the terms of its official publisher.

Data Source and Lineage

Every download must record at least its source URL, download date, cutoff date, and local filename. Public data may still have usage conditions or personal fields. Verify its license, attribution requirements, and appropriate level of detail before publishing processed data.

Status

The data pipeline, DuckDB analytical layer, multipage Streamlit application, public deployment dataset, and automated quality checks are operational.

About

Exploratory data analysis and analytics pipeline for Chilean civil aviation and aircraft registry data.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages