This repo is a collection of reproducible environmental and ecological analyses spanning climate, habitat, biodiversity, and human–environment interactions. The emphasis is on clean data workflows, geospatial reasoning, and decision-ready visuals (maps, trend plots, compact writeups).
If you’re here from my profile: this repo is the “environmental counterpart” to my aerospace work — same focus on structure and reproducibility, applied to environmental intelligence and ecological datasets.
This repo focuses on end-to-end analytical work: ingesting messy public datasets, building tidy analysis-ready tables, running models or statistical summaries, and producing clear outputs.
Typical workflows include geospatial joins, raster/vector preprocessing, timeseries aggregation, and uncertainty-aware evaluation (where labels exist).
🐦 Wildlife Image Classification API
Goal: Deploy a lightweight FastAPI service for individual bird identification.
Data: Bird Individual ID dataset (Ferreira et al. 2020).
Methods: Transfer learning (ResNet18), PyTorch dataloaders, FastAPI inference, CI/CD, model versioning.
Outputs: Trained model (.pt), classes.json, API endpoints, benchmark scripts.
🧊 Sea Ice Trend Analysis
Goal: Quantify long‑term and seasonal changes in Arctic sea ice extent.
Data: NSIDC Sea Ice Index (NOAA), Copernicus Arctic datasets.
Methods: Raster time‑series analysis, anomaly detection, trend fitting, geospatial visualization.
Outputs: Annotated plots, exploratory notebooks, exportable datasets.
data/ is intentionally not fully checked in if it’s large. This repo favors a structure that makes it easy to reproduce results without guessing.
notebooks/exploratory and narrative analysessrc/reusable functions (loading, cleaning, geospatial utilities)reports/exported figures and short writeupsdata/small samples or metadata (large raw data is pulled via scripts)scripts/one-shot CLIs to download/process data
The goal is that a reader can clone the repo and rerun the analysis with minimal friction.
- Environment:
environment.ymlorpyproject.toml - Determinism: fixed random seeds where applicable
- Data provenance: dataset sources documented in each project folder
- Outputs: figures/maps exported to
reports/(and kept lightweight)
Quickstart:
# create env (example)
conda env create -f environment.yml
conda activate envdata
# run notebooks (example)
jupyter lab