Mortality rate, under-5, female (per 1,000 live births)

Source: worldbank.org, 03.09.2025

Year: 2023

Flag Country Value Value change, % Rank
Afghanistan Afghanistan 51.6 -3.37% 24
Angola Angola 58.8 -3.76% 19
Albania Albania 8.6 -1.15% 115
Andorra Andorra 2.2 -4.35% 152
United Arab Emirates United Arab Emirates 4.5 -6.25% 135
Argentina Argentina 8.8 -2.22% 113
Armenia Armenia 9 -5.26% 112
Antigua & Barbuda Antigua & Barbuda 8.5 -2.3% 116
Australia Australia 3.4 0% 142
Austria Austria 2.8 -3.45% 147
Azerbaijan Azerbaijan 17.4 -4.4% 77
Burundi Burundi 45 -3.43% 29
Belgium Belgium 3.2 -3.03% 144
Benin Benin 72.4 -3.21% 11
Burkina Faso Burkina Faso 72.7 -3.2% 10
Bangladesh Bangladesh 28.4 -0.351% 57
Bulgaria Bulgaria 5.6 -1.75% 128
Bahrain Bahrain 8.4 +2.44% 117
Bahamas Bahamas 11.7 -1.68% 101
Bosnia & Herzegovina Bosnia & Herzegovina 5.5 -3.51% 129
Belarus Belarus 2.1 -8.7% 153
Belize Belize 11.4 -0.87% 103
Bolivia Bolivia 20.8 -3.7% 68
Brazil Brazil 12.8 -0.775% 94
Barbados Barbados 9.2 -3.16% 111
Brunei Brunei 8.7 -1.14% 114
Bhutan Bhutan 20.9 -3.69% 67
Botswana Botswana 35.3 -2.75% 42
Central African Republic Central African Republic 86 -77.4% 9
Canada Canada 4.7 0% 134
Switzerland Switzerland 3.6 0% 140
Chile Chile 6.6 +4.76% 125
China China 5.9 -4.84% 127
Côte d’Ivoire Côte d’Ivoire 59.7 -3.08% 17
Cameroon Cameroon 61.9 -3.28% 16
Congo - Kinshasa Congo - Kinshasa 67.6 -3.43% 12
Congo - Brazzaville Congo - Brazzaville 36.8 -3.41% 37
Colombia Colombia 10.7 -3.6% 106
Comoros Comoros 37.2 -3.12% 35
Cape Verde Cape Verde 10.5 -4.55% 107
Costa Rica Costa Rica 9.7 +4.3% 108
Cuba Cuba 7.4 +4.23% 122
Cyprus Cyprus 3.3 +3.12% 143
Czechia Czechia 2.3 0% 151
Germany Germany 3.4 0% 142
Djibouti Djibouti 45.5 -3.81% 28
Dominica Dominica 33.1 +0.915% 50
Denmark Denmark 3.1 -3.13% 145
Dominican Republic Dominican Republic 28.5 -2.73% 56
Algeria Algeria 20.1 -0.985% 71
Ecuador Ecuador 11.3 -1.74% 104
Egypt Egypt 16.3 -3.55% 82
Eritrea Eritrea 31.1 -3.12% 53
Spain Spain 2.8 0% 147
Estonia Estonia 1.9 -5% 155
Ethiopia Ethiopia 40.3 -3.59% 31
Finland Finland 2.1 0% 153
Fiji Fiji 26.4 +0.763% 59
France France 4 +2.56% 138
Micronesia (Federated States of) Micronesia (Federated States of) 20.1 -3.37% 71
Gabon Gabon 29.4 -2.65% 55
United Kingdom United Kingdom 4 0% 138
Georgia Georgia 8.1 -2.41% 120
Ghana Ghana 32.8 -4.09% 51
Guinea Guinea 87.7 -2.99% 7
Gambia Gambia 39.2 -3.21% 34
Guinea-Bissau Guinea-Bissau 63.4 -3.35% 15
Equatorial Guinea Equatorial Guinea 65.1 -3.7% 14
Greece Greece 3.4 -2.86% 142
Grenada Grenada 16.7 -1.18% 81
Guatemala Guatemala 19.1 -3.54% 73
Guyana Guyana 22.5 -3.02% 65
Honduras Honduras 13.8 -2.82% 90
Croatia Croatia 4.1 0% 137
Haiti Haiti 49.8 -3.68% 26
Hungary Hungary 3.4 -2.86% 142
Indonesia Indonesia 18.5 -3.14% 75
India India 27.8 -4.79% 58
Ireland Ireland 3.5 +2.94% 141
Iran Iran 11.2 -2.61% 105
Iraq Iraq 20.4 -2.86% 69
Iceland Iceland 2.4 0% 150
Israel Israel 3.1 0% 145
Italy Italy 2.5 -3.85% 149
Jamaica Jamaica 16.8 0% 80
Jordan Jordan 11.9 -3.25% 100
Japan Japan 2.2 0% 152
Kazakhstan Kazakhstan 8.4 -2.33% 117
Kenya Kenya 35.6 -3% 40
Kyrgyzstan Kyrgyzstan 14.9 -1.97% 86
Cambodia Cambodia 20.2 -3.81% 70
Kiribati Kiribati 50.5 -2.32% 25
St. Kitts & Nevis St. Kitts & Nevis 14.6 -2.67% 87
South Korea South Korea 2.5 -3.85% 149
Kuwait Kuwait 7.9 -1.25% 121
Laos Laos 34.5 -3.36% 46
Lebanon Lebanon 17 +5.59% 79
Liberia Liberia 66.3 -3.07% 13
Libya Libya 29.8 +214% 54
St. Lucia St. Lucia 14.1 -1.4% 89
Sri Lanka Sri Lanka 5.5 -3.51% 129
Lesotho Lesotho 52.8 -4.35% 23
Lithuania Lithuania 3.1 0% 145
Luxembourg Luxembourg 2.1 -4.55% 153
Latvia Latvia 2.7 -6.9% 148
Morocco Morocco 14.9 -3.25% 86
Monaco Monaco 2.5 0% 149
Moldova Moldova 13 -0.763% 93
Madagascar Madagascar 59.5 -1.33% 18
Maldives Maldives 5.2 -5.45% 131
Mexico Mexico 11.2 -3.45% 105
Marshall Islands Marshall Islands 24.8 -3.5% 61
North Macedonia North Macedonia 3.1 -18.4% 145
Mali Mali 86.1 -3.04% 8
Malta Malta 5.1 -1.92% 132
Myanmar (Burma) Myanmar (Burma) 34.6 -3.08% 45
Montenegro Montenegro 2.4 -4% 150
Mongolia Mongolia 12.2 -1.61% 97
Mozambique Mozambique 57.1 -4.52% 20
Mauritania Mauritania 33.9 -3.14% 49
Mauritius Mauritius 13.5 -2.17% 91
Malawi Malawi 34 -3.95% 48
Malaysia Malaysia 7.3 0% 123
Namibia Namibia 36.6 -2.92% 38
Niger Niger 111 -2.21% 1
Nigeria Nigeria 99.5 -3.02% 2
Nicaragua Nicaragua 12 -3.23% 99
Netherlands Netherlands 3.6 0% 140
Norway Norway 2.1 0% 153
Nepal Nepal 24.4 -3.94% 62
Nauru Nauru 8.1 -5.81% 120
New Zealand New Zealand 4.3 -2.27% 136
Oman Oman 9.5 -1.04% 109
Pakistan Pakistan 53.8 -3.41% 21
Panama Panama 12.1 -4.72% 98
Peru Peru 14.2 -2.07% 88
Philippines Philippines 24 -1.64% 63
Palau Palau 19.9 -1.97% 72
Papua New Guinea Papua New Guinea 37 -3.39% 36
Poland Poland 3.9 0% 139
North Korea North Korea 16.1 +1.9% 83
Portugal Portugal 2.9 0% 146
Paraguay Paraguay 15.3 -3.16% 85
Palestinian Territories Palestinian Territories 25.1 +94.6% 60
Qatar Qatar 5.6 -3.45% 128
Romania Romania 6 0% 126
Russia Russia 4 -6.98% 138
Rwanda Rwanda 36.1 -2.17% 39
Saudi Arabia Saudi Arabia 6 -4.76% 126
Sudan Sudan 45 -3.23% 29
Senegal Senegal 34.1 -5.01% 47
Singapore Singapore 1.9 -5% 155
Solomon Islands Solomon Islands 18.8 -2.59% 74
Sierra Leone Sierra Leone 88.4 -3.49% 6
El Salvador El Salvador 9.4 -4.08% 110
San Marino San Marino 1.3 -7.14% 156
Somalia Somalia 98.1 -28.2% 3
Serbia Serbia 4.7 -2.08% 134
South Sudan South Sudan 93.4 -0.214% 5
São Tomé & Príncipe São Tomé & Príncipe 12.5 -4.58% 96
Suriname Suriname 14.2 -3.4% 88
Slovakia Slovakia 5.4 0% 130
Slovenia Slovenia 2 -4.76% 154
Sweden Sweden 2.2 -4.35% 152
Eswatini Eswatini 40.2 -2.9% 32
Seychelles Seychelles 13.1 -2.24% 92
Syria Syria 18.5 -2.63% 75
Turks & Caicos Islands Turks & Caicos Islands 5 -3.85% 133
Chad Chad 94.8 -2.97% 4
Togo Togo 53.7 -3.42% 22
Thailand Thailand 8.3 -2.35% 118
Tajikistan Tajikistan 23.9 -1.24% 64
Turkmenistan Turkmenistan 34.7 -2.25% 44
Timor-Leste Timor-Leste 45.8 -2.55% 27
Tonga Tonga 8.8 -3.3% 113
Trinidad & Tobago Trinidad & Tobago 17.3 -2.26% 78
Tunisia Tunisia 12.1 -6.92% 98
Turkey Turkey 12.1 +36% 98
Tuvalu Tuvalu 17.6 -3.3% 76
Tanzania Tanzania 35 -4.11% 43
Uganda Uganda 34.6 -3.89% 45
Ukraine Ukraine 7.2 -6.49% 124
Uruguay Uruguay 5.9 -1.67% 127
United States United States 5.9 0% 127
Uzbekistan Uzbekistan 11.6 -3.33% 102
St. Vincent & Grenadines St. Vincent & Grenadines 9.7 -3.96% 108
Venezuela Venezuela 22.2 0% 66
British Virgin Islands British Virgin Islands 12.6 -3.82% 95
Vietnam Vietnam 16.3 -1.81% 82
Vanuatu Vanuatu 15.6 -1.89% 84
Samoa Samoa 14.1 -2.76% 89
Kosovo Kosovo 8.2 -3.53% 119
Yemen Yemen 35.5 -4.05% 41
South Africa South Africa 31.9 +0.949% 52
Zambia Zambia 40.5 -4.48% 30
Zimbabwe Zimbabwe 39.3 -3.91% 33

                    
# 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 = 'SH.DYN.MORT.FE'

# 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 <- 'SH.DYN.MORT.FE'

# 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))