School enrollment, secondary, female (% net)

Source: worldbank.org, 03.09.2025

Year: 2018

Flag Country Value Value change, % Rank
Afghanistan Afghanistan 36.7 +4.48% 53
Albania Albania 89.2 +0.815% 14
Antigua & Barbuda Antigua & Barbuda 89.7 +3.56% 13
Azerbaijan Azerbaijan 88.2 16
Burundi Burundi 31 -1.17% 60
Burkina Faso Burkina Faso 31.7 +8.04% 58
Bangladesh Bangladesh 72.3 +4.94% 37
Bahrain Bahrain 93.8 -0.677% 6
Bahamas Bahamas 65 -2.09% 41
Belarus Belarus 96.2 -0.77% 4
Belize Belize 73.4 +0.891% 36
Bolivia Bolivia 77 +0.472% 30
Barbados Barbados 96.8 -3.15% 2
Brunei Brunei 84 -1.86% 23
Bhutan Bhutan 76.5 +5.11% 31
Côte d’Ivoire Côte d’Ivoire 35.1 +8.18% 54
Colombia Colombia 80.2 +1.08% 27
Comoros Comoros 51.7 +15.3% 48
Cape Verde Cape Verde 74.5 -1.26% 35
Costa Rica Costa Rica 84.3 +0.512% 21
Cuba Cuba 86.7 +0.373% 19
Dominican Republic Dominican Republic 74.5 +0.483% 34
Ecuador Ecuador 86 -0.582% 20
Egypt Egypt 83.1 +1.53% 24
Eritrea Eritrea 40.3 +3.13% 51
Georgia Georgia 96.8 +1.88% 1
Ghana Ghana 58.8 +5.31% 47
Guatemala Guatemala 43 +0.845% 49
Hong Kong SAR China Hong Kong SAR China 96.5 +2.47% 3
Indonesia Indonesia 79.9 +4.72% 28
Jamaica Jamaica 76.3 -0.0159% 32
Jordan Jordan 63.5 +1.09% 43
Kyrgyzstan Kyrgyzstan 84.1 +1.43% 22
Laos Laos 59.4 +0.102% 46
St. Lucia St. Lucia 81.7 -0.198% 26
Sri Lanka Sri Lanka 92.3 +2.02% 9
Macao SAR China Macao SAR China 88.4 +2.45% 15
Morocco Morocco 64.5 +2.09% 42
Moldova Moldova 77.6 -0.243% 29
Madagascar Madagascar 31 +2.45% 59
Mali Mali 26.8 +2.58% 62
Myanmar (Burma) Myanmar (Burma) 66.6 +7.44% 40
Montenegro Montenegro 89.8 -0.303% 12
Mauritania Mauritania 31.7 +11.3% 57
Mauritius Mauritius 87.1 -0.733% 18
Malawi Malawi 34.8 +7.95% 55
Malaysia Malaysia 75.4 -2.82% 33
Oman Oman 93.2 +0.799% 7
Pakistan Pakistan 34.2 +8.08% 56
Peru Peru 87.7 +3.53% 17
Palestinian Territories Palestinian Territories 91.2 +0.0134% 11
Rwanda Rwanda 38.8 +27.6% 52
Saudi Arabia Saudi Arabia 94.1 +5.78% 5
Sierra Leone Sierra Leone 41 +7.55% 50
El Salvador El Salvador 62.6 +2.83% 44
San Marino San Marino 62.5 +35.9% 45
Serbia Serbia 92.5 -0.426% 8
Seychelles Seychelles 82.6 -2.2% 25
Timor-Leste Timor-Leste 67 +3.58% 39
Tuvalu Tuvalu 71.2 +12.3% 38
Tanzania Tanzania 27.3 +9.25% 61
St. Vincent & Grenadines St. Vincent & Grenadines 91.6 -0.622% 10

The indicator 'School enrollment, secondary, female (% net)' is a critical measure of gender parity in education across various regions and countries. This statistic provides insights into the percentage of female students who are enrolled in secondary education relative to the total number of girls of secondary school age in that region. A higher percentage indicates greater access to education for females, which is essential for promoting equality and empowering women globally. Moreover, the enrollment rate reflects the broader educational landscape, including economic, cultural, and social factors that influence educational access.

The importance of this indicator cannot be overstated. Secondary education is a pivotal stage in a person’s educational journey, laying the foundation for further studies or skilled employment opportunities. For girls, completing secondary school can significantly impact their future, enabling them to attain better socioeconomic statuses, improve their health outcomes, and contribute more effectively to their families and communities. These outcomes, in turn, contribute to national development. Countries that prioritize female secondary education tend to witness a more robust economy, improved health standards, and reduced poverty levels.

School enrollment rates for girls often relate closely to several other indicators, such as maternal mortality rates, child marriage rates, and overall literacy rates. Countries with low female secondary enrollment numbers frequently grapple with higher maternal mortality rates, as lack of education is strongly correlated with early pregnancies and lesser health awareness. Likewise, societies that endorse secondary education for girls tend to experience lower rates of child marriage, as educated women are more likely to value and advocate for their education and the education of their own children. Thus, improving female school enrollment can break longstanding cycles of poverty and lead to wider societal benefits.

Several factors affect the school enrollment rates of females at the secondary level. Economic constraints play a significant role; in families with limited resources, prioritizing education for male children may take precedence over girls. Additionally, cultural norms and traditions can restrict educational opportunities for girls, sometimes deeming them unworthy or unnecessary. Safety and security issues also contribute, especially in regions where the journey to school may put girls at risk of violence or harassment. Infrastructural deficits, such as inadequate school facilities or a lack of female teachers, can further hinder girls’ education. Therefore, multiple dimensions must be considered when analyzing and addressing this indicator.

To enhance female secondary enrollment, several strategies can be employed. Governments and education stakeholders can initiate awareness campaigns that emphasize the importance of girls' education, engaging local communities in dialogue to shift cultural perceptions. Financial incentives, such as conditional cash transfers to families for keeping girls in school, have proven effective in some regions. Infrastructure improvements, such as building safe schools closer to communities and providing adequate sanitation facilities, can also make a significant difference. Furthermore, training and hiring female teachers can help create a more supportive environment for female students, combating stereotypes and fostering a sense of belonging and encouragement.

Despite the strategies mentioned, there are flaws in addressing female secondary school enrollment rates. Firstly, initiatives may be inconsistently applied or lack the necessary government backing for sustainability. Moreover, cultural attitudes might shift slowly, and deep-rooted beliefs about gender roles can be resistant to change. Programs that focus purely on enrollment insufficiently address the quality of education provided; simply enrolling girls is not enough if they do not feel safe, supported, or engaged in learning. Therefore, a holistic approach that encompasses both enrollment and the quality of education is necessary to ensure meaningful changes in the lives of young women.

As of 2019, the median value for secondary school enrollment for females globally stood at 60.35%. This statistic represents the progress made over the years but also highlights the disparities that still exist. For instance, countries like Nepal, where the female secondary enrollment rate is at 62.82%, showcase the potential success models for other regions. Conversely, Ghana illustrates the challenges at a comparable rate of 57.88%, indicating the need for focused interventions and policy support to address the barriers girls face in accessing secondary education.

A look at the world values from 1998 to 2018 reveals a consistent upward trend in female school enrollment, from 51.54% in 1998 to a notable 66.27% in 2018. This indicates a significant global shift towards recognizing and addressing gender disparities in education. However, the slow rate of increase suggests that while progress is being made, it is not sufficiently rapid to address the urgency of the situation faced by many girls today. The growth trend signals hope, yet it also emphasizes the vital need for sustained efforts, as ensuring that girls are not just enrolled but also actively engaged and succeeding in their educational pursuits is paramount.

In conclusion, focusing on female secondary school enrollment is not just a matter of personal benefit for girls; it is essential for holistic national development. Understanding the various factors that influence this indicator and employing effective strategies can drive significant improvements in education access. However, consistent monitoring, quality assessment, and community engagement must accompany these efforts to promote a sustainable and equitable change in the educational landscape.

                    
# 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 = 'SE.SEC.NENR.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 <- 'SE.SEC.NENR.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))