education-data-lab / README.md
Hugdrigo's picture
Upload 19 files
3939ca3 verified
|
Raw History Blame Contribute Delete
5.54 kB
metadata
title: Education Data Lab
emoji: 馃帗
colorFrom: green
colorTo: blue
sdk: static
app_file: index.html
pinned: false
license: mit
short_description: Compare Latin American education using World Bank data.
tags:
  - education
  - data-analysis
  - latin-america
  - data-visualization
  - world-bank
  - research
  - reproducibility

Education Data Lab 路 Comparative Education Intelligence

An open-source, browser-based research dashboard for comparative education in Latin America.

Education Data Lab combines eight selected World Development Indicators with transparent comparative analytics, exact-year country gap calculations, longitudinal visualizations, exploratory associations, data-coverage audits, and exportable evidence notes. It is a research aid, not a predictive model, causal evaluation, official SDG 4 index, or substitute for education-sector expertise.

What the application actually does

  1. Fetches public World Bank Indicators API v2 data for up to eight selected Latin American economies, using WDI source 2 and a specified year range.
  2. Keeps missing data missing and displays source years instead of aligning observations by silent imputation.
  3. Offers six views: Overview, Trends, Country gaps, Associations, Data quality, Research brief.
  4. Calculates descriptive changes, exact-year between-country differences, observation coverage, source lag, and pairwise Pearson correlations.
  5. Exports source-marked CSV, research briefs in Markdown, and research sessions in JSON. JSON sessions can be imported to reproduce exploratory views.
  6. Includes a clearly labeled synthetic demo for offline interface testing. Its numbers are fictional and must not be cited.

Reproducible methods, not invented metrics

All charts and reports use deterministic transformations from selected observations. The demo data are generated by demo-data.js. The source code has no secret keys, cloud database, cookies or external runtime JavaScript libraries. Browser-side network requests occur only when you click Load World Bank data.

Live-data verification remains outstanding until the published Space is tested. The local browser tests use a mocked API response and cannot confirm current third-party API availability.

Usage

  • Select between one and eight countries, a primary indicator, a year window, and an association indicator.
  • Press Load World Bank data for live public observations; the current mode is always visible in the top-right header.
  • Explore all six research tabs.
  • Export the CSV data, Markdown brief, or JSON research session in the sixth tab.
  • Read the limitations before using any conclusions in publications or decisions.

Validated indicator IDs

Indicator World Bank code Notes
Primary completion rate SE.PRM.CMPT.ZS Gross intake to last primary grade; may exceed 100.
Secondary school enrollment SE.SEC.ENRR Gross enrollment, not net.
Tertiary school enrollment SE.TER.ENRR Gross enrollment, not tertiary completion.
Education expenditure SE.XPD.TOTL.GD.ZS Government education spending, % GDP.
Adult literacy rate SE.ADT.LITR.ZS Reporting may be sparse.
Individuals using the Internet IT.NET.USER.ZS Context series, not schooling outcome.
GDP per capita (current USD) NY.GDP.PCAP.CD Context series subject to prices and exchange rates.
Population SP.POP.TOTL Context series.

See DATA_DICTIONARY.md and METHODOLOGY.md for fuller discussion.

Data provenance

Indicator availability, methodology, units and license terms are owned by the respective data providers. The MIT license in this repository covers the application source code, not third-party data.

Run locally

For this static site, any local HTTP server that supports JavaScript modules works:

python3 -m http.server 8000

Then open http://localhost:8000. Or publish the files unchanged to Hugging Face as a Static Space.

Automated tests

With Node.js 22 or newer:

npm test

The test suite covers normalizing WDI records, missingness, same-year joins, correlations, data exports, simulated values and invalid input. For local browser QA, see browser_test.py and QA_REPORT.md. The headless browser QA uses an in-memory HTML bundle when local navigation is restricted.

Known limits and ethics

The dashboard does not certify data quality, provide official education rankings, predict outcomes, infer causality, represent unobserved people, or account for sampling error. Correlations may be unstable because the same countries contribute many years and observations are not statistically independent. Comparing latest observations may mix reporting years.

Read LIMITATIONS.md, PRIVACY.md, and the English documentation before interpretation. Spanish publishing steps are in DEPLOYMENT_ES.md.

Created by Rodrigo Pantoja 路 Applied AI, data, education and research engineering.