Human Capital Index (HCI), Lower Bound (scale 0-1)

Source: worldbank.org, 19.12.2024

Year: 2020

Flag Country Value Value change, % Rank
Afghanistan Afghanistan 0.387 +1.61% 145
Angola Angola 0.33 +0.475% 168
Albania Albania 0.625 +1.43% 50
United Arab Emirates United Arab Emirates 0.662 -0.253% 43
Argentina Argentina 0.592 -2.56% 68
Armenia Armenia 0.569 -0.466% 80
Antigua & Barbuda Antigua & Barbuda 0.584 +2.78% 73
Australia Australia 0.762 -1.24% 16
Austria Austria 0.737 -2.97% 27
Azerbaijan Azerbaijan 0.562 -7.91% 85
Burundi Burundi 0.364 -1.02% 154
Belgium Belgium 0.752 -0.256% 19
Benin Benin 0.379 +0.755% 147
Burkina Faso Burkina Faso 0.363 +1.15% 156
Bangladesh Bangladesh 0.455 +1.14% 121
Bulgaria Bulgaria 0.603 -8.13% 60
Bahrain Bahrain 0.645 -1.72% 45
Bosnia & Herzegovina Bosnia & Herzegovina 0.571 -6.46% 79
Belarus Belarus 0.69 36
Brazil Brazil 0.546 +1.15% 90
Brunei Brunei 0.619 55
Bhutan Bhutan 0.45 123
Botswana Botswana 0.389 +0.31% 144
Central African Republic Central African Republic 0.256 174
Canada Canada 0.79 -0.29% 5
Switzerland Switzerland 0.747 -1.26% 21
Chile Chile 0.641 -2.05% 46
China China 0.64 +0.891% 48
Côte d’Ivoire Côte d’Ivoire 0.362 +2.47% 158
Cameroon Cameroon 0.377 +0.858% 149
Congo - Kinshasa Congo - Kinshasa 0.344 +0.168% 165
Congo - Brazzaville Congo - Brazzaville 0.393 +0.0858% 142
Colombia Colombia 0.592 +0.751% 67
Comoros Comoros 0.36 +0.773% 159
Costa Rica Costa Rica 0.619 +3.82% 54
Cyprus Cyprus 0.746 +0.118% 22
Czechia Czechia 0.743 -1.7% 24
Germany Germany 0.74 -1.66% 25
Dominica Dominica 0.529 -1.54% 95
Denmark Denmark 0.748 -1.89% 20
Dominican Republic Dominican Republic 0.489 -0.853% 111
Algeria Algeria 0.527 +0.441% 96
Ecuador Ecuador 0.585 -0.35% 72
Egypt Egypt 0.48 +0.306% 114
Spain Spain 0.723 -0.882% 28
Estonia Estonia 0.765 +0.526% 14
Ethiopia Ethiopia 0.372 -0.534% 152
Finland Finland 0.787 -2.31% 7
Fiji Fiji 0.496 106
France France 0.754 +0.949% 18
Micronesia (Federated States of) Micronesia (Federated States of) 0.47 +8.24% 117
Gabon Gabon 0.433 +0.119% 128
United Kingdom United Kingdom 0.775 +0.785% 11
Georgia Georgia 0.562 -6.52% 84
Ghana Ghana 0.438 +1.35% 126
Guinea Guinea 0.352 +0.26% 162
Gambia Gambia 0.394 +4.55% 141
Greece Greece 0.68 -0.38% 38
Grenada Grenada 0.553 +4.2% 87
Guatemala Guatemala 0.451 +0.91% 122
Guyana Guyana 0.477 +0.0954% 115
Hong Kong SAR China Hong Kong SAR China 0.802 -1.08% 2
Honduras Honduras 0.469 +0.105% 118
Croatia Croatia 0.7 -2.85% 32
Haiti Haiti 0.428 +0.216% 130
Hungary Hungary 0.675 -2.95% 39
Indonesia Indonesia 0.53 +0.65% 94
India India 0.489 +1.76% 110
Ireland Ireland 0.784 -2.53% 9
Iran Iran 0.581 +0.16% 74
Iraq Iraq 0.401 +1.92% 139
Iceland Iceland 0.739 +0.268% 26
Israel Israel 0.723 -3.91% 29
Italy Italy 0.72 -3.37% 30
Jamaica Jamaica 0.518 -0.809% 99
Jordan Jordan 0.541 +1.1% 91
Japan Japan 0.797 -4.29% 3
Kazakhstan Kazakhstan 0.622 -18.5% 52
Kenya Kenya 0.527 +0.69% 97
Kyrgyzstan Kyrgyzstan 0.587 +0.458% 71
Cambodia Cambodia 0.471 +0.0341% 116
Kiribati Kiribati 0.463 +4.32% 119
St. Kitts & Nevis St. Kitts & Nevis 0.573 +2.21% 77
South Korea South Korea 0.788 -4.31% 6
Kuwait Kuwait 0.553 -0.296% 88
Laos Laos 0.441 -0.111% 125
Lebanon Lebanon 0.505 -1.81% 103
Liberia Liberia 0.303 +0.173% 170
St. Lucia St. Lucia 0.588 +2.27% 70
Sri Lanka Sri Lanka 0.592 +0.823% 66
Lesotho Lesotho 0.375 +0.262% 150
Lithuania Lithuania 0.697 -2.55% 33
Luxembourg Luxembourg 0.681 -0.847% 37
Latvia Latvia 0.694 -4.31% 34
Macao SAR China Macao SAR China 0.79 +4.08% 4
Morocco Morocco 0.493 +2.43% 107
Moldova Moldova 0.575 +0.359% 75
Madagascar Madagascar 0.375 +1.66% 151
Mexico Mexico 0.605 +0.13% 58
Marshall Islands Marshall Islands 0.404 +4.42% 137
North Macedonia North Macedonia 0.551 +3.98% 89
Mali Mali 0.307 -1.08% 169
Malta Malta 0.703 +0.00791% 31
Myanmar (Burma) Myanmar (Burma) 0.459 +1.09% 120
Montenegro Montenegro 0.624 +1.72% 51
Mongolia Mongolia 0.597 -0.456% 63
Mozambique Mozambique 0.343 +1.61% 166
Mauritania Mauritania 0.345 +2.94% 164
Mauritius Mauritius 0.605 -0.26% 57
Malawi Malawi 0.395 +0.241% 140
Malaysia Malaysia 0.601 -3.07% 61
Namibia Namibia 0.423 +0.266% 132
Niger Niger 0.295 -0.831% 171
Nigeria Nigeria 0.335 +1.35% 167
Nicaragua Nicaragua 0.5 +0.118% 105
Netherlands Netherlands 0.78 -1.87% 10
Norway Norway 0.764 +0.339% 15
Nepal Nepal 0.49 +1.2% 108
Nauru Nauru 0.485 112
New Zealand New Zealand 0.768 +0.75% 13
Oman Oman 0.595 -0.485% 64
Pakistan Pakistan 0.392 +1.47% 143
Panama Panama 0.489 -2.52% 109
Peru Peru 0.593 +1.76% 65
Philippines Philippines 0.501 -6.39% 104
Palau Palau 0.567 +3.63% 81
Papua New Guinea Papua New Guinea 0.413 +0.866% 134
Poland Poland 0.743 -1.06% 23
Portugal Portugal 0.759 -1.95% 17
Paraguay Paraguay 0.51 +0.0885% 101
Palestinian Territories Palestinian Territories 0.567 +1.37% 82
Qatar Qatar 0.632 +0.737% 49
Romania Romania 0.573 -2.09% 78
Russia Russia 0.673 -6.55% 40
Rwanda Rwanda 0.364 +0.567% 155
Saudi Arabia Saudi Arabia 0.565 -0.317% 83
Sudan Sudan 0.362 +0.183% 157
Senegal Senegal 0.404 -0.359% 138
Singapore Singapore 0.872 -0.673% 1
Solomon Islands Solomon Islands 0.409 -2.58% 136
Sierra Leone Sierra Leone 0.345 +2.3% 163
El Salvador El Salvador 0.531 -0.019% 93
Serbia Serbia 0.665 -10.7% 42
South Sudan South Sudan 0.267 -0.84% 173
Slovakia Slovakia 0.657 -2.07% 44
Slovenia Slovenia 0.769 -1.58% 12
Sweden Sweden 0.785 -0.885% 8
Eswatini Eswatini 0.352 +0.777% 161
Seychelles Seychelles 0.609 +0.294% 56
Chad Chad 0.282 -0.142% 172
Togo Togo 0.41 +2.33% 135
Thailand Thailand 0.598 -1.01% 62
Tajikistan Tajikistan 0.481 -8.53% 113
Timor-Leste Timor-Leste 0.432 +0.115% 129
Tonga Tonga 0.514 +2.51% 100
Trinidad & Tobago Trinidad & Tobago 0.574 +0.195% 76
Tunisia Tunisia 0.508 +1.41% 102
Turkey Turkey 0.641 +4.39% 47
Tuvalu Tuvalu 0.428 +1.14% 131
Tanzania Tanzania 0.377 +0.669% 148
Uganda Uganda 0.371 +0.399% 153
Ukraine Ukraine 0.62 -1.6% 53
Uruguay Uruguay 0.589 -0.666% 69
United States United States 0.693 -1.78% 35
Uzbekistan Uzbekistan 0.604 59
St. Vincent & Grenadines St. Vincent & Grenadines 0.522 -0.645% 98
Vietnam Vietnam 0.671 +0.318% 41
Vanuatu Vanuatu 0.436 +2.1% 127
Samoa Samoa 0.535 +4.72% 92
Kosovo Kosovo 0.561 -0.185% 86
Yemen Yemen 0.353 -0.389% 160
South Africa South Africa 0.414 +0.638% 133
Zambia Zambia 0.381 +1.18% 146
Zimbabwe Zimbabwe 0.444 +1.08% 124

The Human Capital Index (HCI) serves as a vital metric for assessing the potential of individuals to contribute effectively to the economy throughout their lives. Designed by the World Bank, the HCI measures the knowledge, skills, and health that individuals can expect to attain by the age of five, hence determining the economic productivity of the next generation. It is a composite index that includes indicators assessing health, education, and survival rates, providing a comprehensive perspective on the impactful role of human capital in fostering economic growth and development.

The scale of the HCI ranges from 0 to 1, with a score closer to 1 indicating higher levels of human capital. The lower bound reflects the least possible level of human capital, signaling critical deficiencies in health and education systems. In 2020, the median value for the HCI was reported at 0.55, suggesting that, on average, individuals across the globe can expect to achieve only slightly more than half of their potential human capital. This underscores an alarming situation in many regions, where children and young adults are not receiving adequate education or health care.

Countries that rank high on the HCI are notable for their robust education systems and healthcare provisions. For instance, Singapore leads with an impressive score of 0.87, showcasing effective government policies, significant investments in human health and education, and a commitment to lifelong learning. Following Singapore are regions like Hong Kong SAR China, Japan, Macao SAR China, and Canada, each scoring between 0.79 and 0.8. These areas exemplify the relationship between strong government infrastructure, low poverty levels, and high economic performance. Their high HCI scores reflect a commitment to ensuring all children have access to quality schooling, health care options, and support systems necessary to thrive.

Conversely, the lowest rankings on the HCI are serious cause for concern. The Central African Republic, South Sudan, Chad, Niger, and Liberia score between 0.26 and 0.3, highlighting substantial deficits in education and health services. Such low scores reflect systemic issues including chronic poverty, political instability, and inadequate educational infrastructure. In these nations, a majority of children face barriers to accessing basic services, leading to significant missed opportunities for personal and societal growth.

The importance of the HCI lies in its ability to correlate with economic performance. Nations with high human capital scores tend to experience faster economic growth, enhanced productivity, and reduced inequality through increased employment and income levels. The HCI emphasizes the notion that investing in human capital can yield significant economic dividends, improving individual labor market outcomes and ultimately lifting the economic status of entire countries.

Additionally, the HCI is closely related to other indices such as the Gross Domestic Product (GDP) and the GINI Index, which measures income inequality. There is a demonstrable correlation between high HCI scores and better economic indicators. Countries with improved human capital tend to enjoy higher GDP per capita, reflecting a more productive workforce. Meanwhile, efforts to raise the HCI could potentially lead to reduced income inequality as access to quality education and health care becomes more equitable. This is crucial, as widespread human capital deficiencies can perpetuate cycles of poverty and hinder social mobility.

Several factors affect a region’s HCI score, including government policy, economic resources, and social stability. Effective educational policies that empower marginalized communities, progressive healthcare initiatives, and sustained investment in social services are essential in fostering human capital development. Furthermore, cultural values related to education can play a significant role, with societies that prioritize learning typically yielding higher HCI scores. Conversely, war, disease outbreaks, and economic downturns can lead to a downward spiral, severely impacting HCI potential.

Strategies to improve human capital should focus on multi-faceted approaches, combining health interventions, educational reforms, and social support systems. Expanding access to quality early childhood education can pave the way for better learning outcomes. For instance, investing in teacher training programs, enhancing school curricula, and improving school infrastructure are key steps needed to elevate educational standards. In parallel, access to healthcare services must be augmented, ensuring that all children receive mandatory vaccinations, nutrition, and prenatal care. This dual approach—enhancing both education and health—creates a solid foundation for improving the HCI.

However, there are flaws in the implementation of HCI policies, primarily due to resource allocation and governance challenges. In many developing regions, corruption can siphon off necessary funds for education and health initiatives, leading to a lower HCI. Furthermore, there may be a tendency to default to numerical assessments rather than examining qualitative aspects of human capital, which can lead to misleading conclusions about a population's capabilities.

In totality, the Human Capital Index is not merely an assessment tool but a call to action for nations to prioritize their human resources. The disparities portrayed through the HCI are stark reminders that while some regions flourish, others suffer dire consequences due to systemic challenges. By understanding these dynamics and implementing targeted strategies, we can strive towards a world where every individual can contribute their fullest potential, thus enriching global prosperity.

                    
# Install missing packages
import sys
import subprocess

def install(package):
subprocess.check_call([sys.executable, "-m", "pip", "install", package])

# Required packages
for package in ['wbdata', 'country_converter']:
try:
__import__(package)
except ImportError:
install(package)

# Import libraries
import wbdata
import country_converter as coco
from datetime import datetime

# Define World Bank indicator code
dataset_code = 'HD.HCI.OVRL.LB'

# Download data from World Bank API
data = wbdata.get_dataframe({dataset_code: 'value'},
date=(datetime(1960, 1, 1), datetime.today()),
parse_dates=True,
keep_levels=True).reset_index()

# Extract year
data['year'] = data['date'].dt.year

# Convert country names to ISO codes using country_converter
cc = coco.CountryConverter()
data['iso2c'] = cc.convert(names=data['country'], to='ISO2', not_found=None)
data['iso3c'] = cc.convert(names=data['country'], to='ISO3', not_found=None)

# Filter out rows where ISO codes could not be matched — likely not real countries
data = data[data['iso2c'].notna() & data['iso3c'].notna()]

# Sort for calculation
data = data.sort_values(['iso3c', 'year'])

# Calculate YoY absolute and percent change
data['value_change'] = data.groupby('iso3c')['value'].diff()
data['value_change_percent'] = data.groupby('iso3c')['value'].pct_change() * 100

# Calculate ranks (higher GDP per capita = better rank)
data['rank'] = data.groupby('year')['value'].rank(ascending=False, method='dense')

# Calculate rank change from previous year
data['rank_change'] = data.groupby('iso3c')['rank'].diff()

# Select desired columns
final_df = data[['country', 'iso2c', 'iso3c', 'year', 'value',
'value_change', 'value_change_percent', 'rank', 'rank_change']].copy()

# Optional: Add labels as metadata (could be useful for export or UI)
column_labels = {
'country': 'Country name',
'iso2c': 'ISO 2-letter country code',
'iso3c': 'ISO 3-letter country code',
'year': 'Year',
'value': 'GDP per capita (current US$)',
'value_change': 'Year-over-Year change in value',
'value_change_percent': 'Year-over-Year percent change in value',
'rank': 'Country rank by GDP per capita (higher = richer)',
'rank_change': 'Change in rank from previous year'
}

# Display first few rows
print(final_df.head(10))

# Optional: Save to CSV
#final_df.to_csv("gdp_per_capita_cleaned.csv", index=False)
                    
                
                    
# Check and install required packages
required_packages <- c("WDI", "countrycode", "dplyr")

for (pkg in required_packages) {
  if (!requireNamespace(pkg, quietly = TRUE)) {
    install.packages(pkg)
  }
}

# Load the necessary libraries
library(WDI)
library(dplyr)
library(countrycode)

# Define the dataset code (World Bank indicator code)
dataset_code <- 'HD.HCI.OVRL.LB'

# Download data using WDI package
dat <- WDI(indicator = dataset_code)

# Filter only countries using 'is_country' from countrycode
# This uses iso2c to identify whether the entry is a recognized country
dat <- dat %>%
  filter(countrycode(iso2c, origin = 'iso2c', destination = 'country.name', warn = FALSE) %in%
           countrycode::codelist$country.name.en)

# Ensure dataset is ordered by country and year
dat <- dat %>%
  arrange(iso3c, year)

# Rename the dataset_code column to "value" for easier manipulation
dat <- dat %>%
  rename(value = !!dataset_code)

# Calculate year-over-year (YoY) change and percentage change
dat <- dat %>%
  group_by(iso3c) %>%
  mutate(
    value_change = value - lag(value),                              # Absolute change from previous year
    value_change_percent = 100 * (value - lag(value)) / lag(value) # Percent change from previous year
  ) %>%
  ungroup()

# Calculate rank by year (higher value => higher rank)
dat <- dat %>%
  group_by(year) %>%
  mutate(rank = dense_rank(desc(value))) %>% # Rank countries by descending value
  ungroup()

# Calculate rank change (positive = moved up, negative = moved down)
dat <- dat %>%
  group_by(iso3c) %>%
  mutate(rank_change = rank - lag(rank)) %>% # Change in rank compared to previous year
  ungroup()

# Select and reorder final columns
final_data <- dat %>%
  select(
    country,
    iso2c,
    iso3c,
    year,
    value,
    value_change,
    value_change_percent,
    rank,
    rank_change
  )

# Add labels (variable descriptions)
attr(final_data$country, "label") <- "Country name"
attr(final_data$iso2c, "label") <- "ISO 2-letter country code"
attr(final_data$iso3c, "label") <- "ISO 3-letter country code"
attr(final_data$year, "label") <- "Year"
attr(final_data$value, "label") <- "GDP per capita (current US$)"
attr(final_data$value_change, "label") <- "Year-over-Year change in value"
attr(final_data$value_change_percent, "label") <- "Year-over-Year percent change in value"
attr(final_data$rank, "label") <- "Country rank by GDP per capita (higher = richer)"
attr(final_data$rank_change, "label") <- "Change in rank from previous year"

# Print the first few rows of the final dataset
print(head(final_data, 10))