Package 'globalvuln'

Title: Global Humanitarian Vulnerability Indices
Description: Country-level data from published global vulnerability, fragility, development, hunger, health, gender, debt, safeguarding, and displacement indices. Publisher scores are retained on their original scales, while ranks and deciles use a common direction in which one indicates the most vulnerable country.
Authors: Matthew Gwynfryn Thomas [aut, cre]
Maintainer: Matthew Gwynfryn Thomas <[email protected]>
License: MIT + file LICENSE
Version: 0.2.0
Built: 2026-10-12 16:01:01 UTC
Source: https://github.com/humaniverse/globalvuln

Help Index


Collate selected humanitarian vulnerability indices

Description

Combine any selection of the package's individual index datasets in either wide or long form. All 195 United Nations member and observer states are retained, including countries outside an index's published coverage.

Usage

collate_indices(indices, format = c("wide", "long"))

Arguments

indices

A non-empty character vector of index identifiers. Available identifiers are inform_risk, inform_severity, underfunded_crisis, oecd_fragility, worldrisk, nd_gain, hdi, mpi, ghi, ghs, wps, un_mvi, debt_distress, searo, disaster_displacement, internal_displacement, and clif_vi (2050 pessimistic projection). Identifiers must be unique and their supplied order is preserved.

format

Output layout: "wide" (the default) or "long".

Details

top_10 and top_20 identify ranks less than or equal to 10 and 20, respectively; they do not refer to deciles. Because ties receive the minimum rank, more than 10 or 20 countries can meet a threshold for an index.

The summary fields are:

  • indices_ranked_count: selected eligible indices for which the country has a non-missing rank.

  • top_10_count and top_20_count: the number of those ranks meeting each threshold.

  • top_10_proportion and top_20_proportion: each count divided by indices_ranked_count.

A country with no available eligible rank has zero counts and missing proportions. Missing scores are not treated as ranks outside the thresholds. In long output, country summaries are repeated on every selected index row.

Wide output includes ghi_score_label, mpi_reference_year, debt_distress_class, and debt_distress_ordinal when their corresponding indices are selected.

Value

A data frame. Wide output has one row per country, four geography columns, ⁠*_score⁠, ⁠*_rank⁠, and ⁠*_decile⁠ columns for each selected index, applicable index-specific fields, and five country summary columns. Long output has one row per country-index combination, the 19 fields documented in individual_indices, and the same five summary columns.

See Also

individual_indices, humanitarian_index_sources

Examples

selected_wide <- collate_indices(
  c("inform_risk", "hdi", "mpi")
)
selected_wide[
  selected_wide$iso3 == "AFG",
  c("country", "inform_risk_rank", "top_10_proportion")
]

selected_long <- collate_indices(
  c("inform_risk", "hdi", "mpi"),
  format = "long"
)
subset(
  selected_long,
  iso3 == "AFG",
  select = c(index_name, score, rank, top_10)
)

Retrieve bundled or latest approved globalvuln data

Description

globalvuln_data() makes data freshness explicit. Package data are the immutable snapshot installed with globalvuln; latest data are read from the approved, versioned static board published with the package website.

Usage

globalvuln_data(
  source = c("latest", "package"),
  version = NULL,
  indices = NULL,
  format = c("long", "wide")
)

Arguments

source

Data source. "latest" reads the approved online board and "package" reads the installed package snapshot offline.

version

Optional version of the humanitarian_indices pin. Versions are only supported for source = "latest".

indices

Optional character vector of index identifiers. The default selects all supported indices.

format

Output layout: "long" (the default) or "wide".

Value

A data frame with provenance in the globalvuln_source, globalvuln_version, and globalvuln_manifest attributes.

See Also

collate_indices(), source_status()

Examples

package_data <- globalvuln_data(
  source = "package",
  indices = c("inform_risk", "hdi")
)

Sources and provenance for the humanitarian indices

Description

Publisher, edition, retrieval, licensing, checksum, and coverage metadata for every index source and the United Nations M49 geography source used to create the package datasets.

Usage

humanitarian_index_sources

Format

A data frame with 18 rows and 17 variables:

source_id

Stable source identifier. For index sources this equals index_id; un_m49 identifies the geography source.

source_name

Human-readable source or index name.

edition

Publisher edition or release.

reference_year

Year or period represented by the source.

source_url

Publisher landing page.

download_url

URL used to retrieve the source snapshot, if any.

local_file

Path used by the source processing pipeline.

retrieval_date

Date on which the source snapshot was retrieved.

sha256

SHA-256 checksum of the source snapshot.

file_bytes

Size of the source snapshot in bytes.

source_status

Availability or manual-input status.

n_numeric_scores

Number of exact numeric scores parsed.

n_labelled_records

Number of publisher labels retained.

n_ranked

Number of observations included in ranking.

coverage_ok

Whether observed coverage passed its configured check.

license_notes

Publisher attribution or reuse note.

source_notes

Processing or interpretation note.

Details

Raw source files remain the property of their publishers and are governed by their respective terms. Users should cite the relevant publisher when using an index. The local_file paths describe the reproducible source pipeline and are not paths within an installed globalvuln package.

Source

Publisher pages in the source_url column. Retrieval dates are recorded separately for each source.

See Also

collate_indices(), individual_indices

Examples

data(humanitarian_index_sources)

humanitarian_index_sources[
  humanitarian_index_sources$source_id == "inform_risk",
  c("source_name", "edition", "source_url")
]

Individual humanitarian index datasets

Description

Seventeen consistently structured datasets, one for each published index in the collection. Each uses the same 195-country master geography so datasets can be compared or collated by iso3; rows outside an index's published coverage contain missing source and score fields.

Format

Each object is a data frame with 195 rows and 19 variables:

country

Country name from the master geography.

iso3

Three-letter ISO 3166-1 country code.

region

United Nations M49 region.

subregion

United Nations M49 subregion.

index_id

Stable short identifier for the index.

index_name

Human-readable name of the index.

source_country

Country label in the publisher's source; missing when the country was not present in that source.

score

Publisher score on its original scale.

score_label

Publisher display label when meaningful, including censored values, score ranges, percentages, or classifications.

reference_year

Year or period represented by the observation.

edition

Publisher's edition or release label.

score_direction

Whether a higher or lower publisher score denotes greater vulnerability: higher_worse or lower_worse.

rankable

Whether the index is eligible for ranking.

eligible_for_counts

Whether an available rank contributes to country-level summary counts and proportions.

n_scored

Number of countries with an exact numeric score for the index.

rank

Rank among scored countries, with 1 denoting most vulnerable; ties receive the minimum rank.

decile

Vulnerability decile derived from rank, from 1 (most vulnerable) to 10 (least vulnerable).

top_10

Whether the country has vulnerability rank 10 or better.

top_20

Whether the country has vulnerability rank 20 or better.

Details

Publisher scores retain their original scales. Rankings are calculated separately within each index's exact numeric coverage; missing and censored scores are not ranked. Deciles are min(10, floor(10 * (rank - 1) / n_scored) + 1). Ties use minimum rank, so more than 10 or 20 countries can have top_10 or top_20 set to TRUE.

The included datasets are:

  • inform_risk: INFORM Risk, 2026 v0.7.2. Measures humanitarian crisis and disaster risk; higher scores indicate greater vulnerability.

  • inform_severity: INFORM Severity, June 2026. Measures current crisis severity; higher scores indicate greater vulnerability. Coverage is the publisher's country sheet.

  • underfunded_crisis: Underfunded Crisis Index, 2025. Reports the cumulative share of requirements funded for 2021–2025; lower percentages indicate greater vulnerability. Regional plans are excluded.

  • oecd_fragility: OECD Multidimensional Fragility, States of Fragility 2025. Measures exposure to risk and insufficient resilience; lower scores indicate greater vulnerability. The public artifact covers 61 high- or extreme-fragility contexts.

  • worldrisk: WorldRiskIndex, 2025. Measures disaster risk from exposure and societal vulnerability; higher scores indicate greater vulnerability.

  • nd_gain: ND-GAIN Country Index, 2026 release using 2024 scores. Measures climate vulnerability and adaptation readiness; lower overall scores indicate greater vulnerability.

  • hdi: Human Development Index, Human Development Report 2025 using 2023 scores. Measures health, education, and living standards; lower scores indicate greater vulnerability.

  • mpi: Global Multidimensional Poverty Index, 2025. Measures overlapping household deprivations; higher scores indicate greater vulnerability. Reference years vary by country survey.

  • ghi: Global Hunger Index, 2025. Measures hunger from undernourishment and child-health indicators; higher scores indicate greater vulnerability. Only exact values are ranked; censored values and ranges remain labels.

  • ghs: Global Health Security Index, 2021. Measures epidemic and pandemic preparedness; lower scores indicate greater vulnerability.

  • wps: Women, Peace and Security Index, 2025/26. Measures women's inclusion, justice, and security; lower scores indicate greater vulnerability.

  • un_mvi: United Nations Multidimensional Vulnerability Index, High-Level Panel results using 2023 data. Measures structural vulnerability and lack of resilience; higher scores indicate greater vulnerability.

  • debt_distress: IMF debt-distress classification, 31 March 2026. The published class is paired with a derived ordinal code from 1 (low) to 4 (in debt distress); it is intentionally not ranked or placed in deciles.

  • searo: Sexual Exploitation and Abuse Risk Overview, 2026 v1.2 using December 2025 data. Measures contextual safeguarding risk; higher scores indicate greater vulnerability.

  • disaster_displacement: IDMC Disaster Displacement Risk Model, GDRM 2.0. Intended to report current-climate annual average displacement, with higher values indicating greater vulnerability. Values are missing in this snapshot because no stable country table was available.

  • internal_displacement: IDMC Internal Displacement Index, 2022 values published in 2023. Measures policy, capacity, drivers, and impacts; lower scores indicate greater vulnerability. Numeric coverage is 44 countries.

  • clif_vi: Climate Finance Vulnerability Index (CliF-VI), 2025 prototype, 2050 pessimistic projection. Combines climate risk with financial vulnerability; higher scores indicate greater vulnerability. Scores cover 188 countries and retain publisher precision on the 0–100 scale. Ranks are recalculated with 1 denoting most vulnerable, reversing the publisher's ranking direction. Ranks contribute to top-10 and top-20 summaries. Climate risk incorporates INFORM Risk 2025 and INFORM Climate Change 2022 projections; this is not an independent measure of current risk. Supplementary governance scores are not part of the overall index.

Source

Publisher details, URLs, and source-specific retrieval dates are in humanitarian_index_sources. CliF-VI uses the June 2025 methodology.

See Also

collate_indices(), humanitarian_index_sources

Examples

data(inform_risk)

head(inform_risk[!is.na(inform_risk$score),
                 c("country", "score", "rank", "decile", "top_10")])

Report cadence-aware source status

Description

Combines approved provenance with publication cadence metadata. An old but still latest publisher edition is not automatically labelled stale.

Usage

source_status(source = c("package", "latest"), as_of = Sys.Date())

Arguments

source

Provenance source: the installed "package" snapshot or the approved "latest" board.

as_of

Date on which status is evaluated. Exposed for reproducible reporting and tests.

Value

A data frame with one row per supported index.

See Also

globalvuln_data(), humanitarian_index_sources

Examples

source_status(source = "package", as_of = as.Date("2026-08-25"))