How elmadervic/medicationsupply works
This repository contains two independent medication-supply research workflows: an R analysis of manufacturing-register coverage and concentration, and a Python substance-level supply analysis. Analysts start from public and manually curated source files, which are standardized into analysis tables and then summarized as concentration, geographic, ATC, and visualization outputs. The graph preserves both branches and their documented major capabilities. Python source excerpts show the build and analysis stages; the R branch’s wiring and outputs are represented from the README, not sampled R source.
Main entry points: manufacturer-registers/raw Register sources · build_supply.py Build supply table · data/raw Raw snapshots · supply_long.csv Long supply table
Components 23
Source data
- Public sources
data/raw - Register sources
data/manufacturer-registers/raw - Raw snapshots
data/raw
Register analysis
- Combine registers
manufacturer-registers/01-data-prep/ComebineAll4SourcesV2.R - Combined register table
data/manufacturer-registers/out - Register concentration
manufacturer-registers/02-analysis/HHI_V2.R - API diversification
manufacturer-registers/02-analysis/api_diversification_by_source.R - Register plots
manufacturer-registers/03-figures - ATC country summary
manufacturer-registers/03-figures/summaryCodeNameCountry_V2.R
Supply analysis
- Fetch snapshots
supply-analysis/01-data-prep/fetch.py - Inspect sources
supply-analysis/01-data-prep/inspect_sources.py - Build supply table
supply-analysis/01-data-prep/build_supply.py - Long supply table
data/interim/supply_long.csv - Supply summaries
supply-analysis/02-analysis/analyse.py - Supply result tables
data/out - Supply visualizations
supply-analysis/03-figures/plots.py - Quality checks
supply-analysis/02-analysis/qc.py
Shared analysis
- Name normalization
supply-analysis/common/normalize.py - Country resolution
supply-analysis/common/countries.py - ATC mapping
supply-analysis/common/atc.py - Critical list reader
supply-analysis/common/ulcm.py
Other components
- Research analyst
- Source services
Connections 28
- Research analyst → Fetch snapshots: starts snapshot
- Source services → Fetch snapshots: provides downloads
- Fetch snapshots → Raw snapshots: writes snapshots
- Research analyst → Inspect sources: inspects inputs
- Inspect sources → Raw snapshots: reads files
- Register sources → Combine registers: provides registers
- Combine registers → Combined register table: writes table
- Register sources → Register concentration: provides registers
- Register concentration → Combined register table: writes results
- Register sources → API diversification: provides registers
- Register sources → Register plots: provides registers
- Combined register table → Register plots: reads table
- Register sources → ATC country summary: provides registers
- Raw snapshots → Build supply table: provides sources
- Build supply table → Name normalization: normalizes names
- Build supply table → Country resolution: resolves countries
- Build supply table → ATC mapping: looks up codes
- Register sources → ATC mapping: optional ATC input
- Build supply table → Long supply table: writes rows
- Long supply table → Supply summaries: reads rows
- Raw snapshots → Critical list reader: provides critical list
- Supply summaries → Critical list reader: loads universe
- Supply summaries → Supply result tables: writes summaries
- Supply result tables → Supply visualizations: loads results
- Long supply table → Supply visualizations: loads supply rows
- Long supply table → Quality checks: checks rows
- Supply result tables → Quality checks: checks results
- Raw snapshots → Quality checks: checks snapshot