Fish species, threatened

Source: worldbank.org, 01.09.2025

Year: 2018

Flag Country Value Value change, % Rank
Aruba Aruba 24 59
Afghanistan Afghanistan 4 78
Angola Angola 53 33
Albania Albania 44 41
Andorra Andorra 0 82
United Arab Emirates United Arab Emirates 20 63
Argentina Argentina 42 43
Armenia Armenia 3 79
American Samoa American Samoa 12 71
Antigua & Barbuda Antigua & Barbuda 31 53
Australia Australia 125 8
Austria Austria 11 72
Azerbaijan Azerbaijan 14 69
Burundi Burundi 17 66
Belgium Belgium 13 70
Benin Benin 40 45
Burkina Faso Burkina Faso 4 78
Bangladesh Bangladesh 29 55
Bulgaria Bulgaria 22 61
Bahrain Bahrain 14 69
Bahamas Bahamas 43 42
Bosnia & Herzegovina Bosnia & Herzegovina 36 49
Belarus Belarus 2 80
Belize Belize 45 40
Bermuda Bermuda 27 57
Bolivia Bolivia 8 74
Brazil Brazil 93 15
Barbados Barbados 29 55
Brunei Brunei 14 69
Bhutan Bhutan 3 79
Botswana Botswana 2 80
Central African Republic Central African Republic 3 79
Canada Canada 44 41
Switzerland Switzerland 9 73
Chile Chile 27 57
China China 136 6
Côte d’Ivoire Côte d’Ivoire 59 28
Cameroon Cameroon 122 9
Congo - Kinshasa Congo - Kinshasa 94 14
Congo - Brazzaville Congo - Brazzaville 57 30
Colombia Colombia 99 13
Comoros Comoros 11 72
Cape Verde Cape Verde 35 50
Costa Rica Costa Rica 64 25
Cuba Cuba 44 41
Curaçao Curaçao 28 56
Cayman Islands Cayman Islands 31 53
Cyprus Cyprus 24 59
Czechia Czechia 2 80
Germany Germany 24 59
Djibouti Djibouti 23 60
Dominica Dominica 31 53
Denmark Denmark 18 65
Dominican Republic Dominican Republic 29 55
Algeria Algeria 41 44
Ecuador Ecuador 61 26
Egypt Egypt 58 29
Eritrea Eritrea 29 55
Spain Spain 83 18
Estonia Estonia 5 77
Ethiopia Ethiopia 14 69
Finland Finland 6 76
Fiji Fiji 20 63
France France 53 33
Faroe Islands Faroe Islands 13 70
Micronesia (Federated States of) Micronesia (Federated States of) 25 58
Gabon Gabon 72 23
United Kingdom United Kingdom 48 37
Georgia Georgia 11 72
Ghana Ghana 58 29
Gibraltar Gibraltar 18 65
Guinea Guinea 76 21
Gambia Gambia 35 50
Guinea-Bissau Guinea-Bissau 41 44
Equatorial Guinea Equatorial Guinea 44 41
Greece Greece 80 19
Grenada Grenada 29 55
Greenland Greenland 9 73
Guatemala Guatemala 41 44
Guam Guam 14 69
Guyana Guyana 33 51
Hong Kong SAR China Hong Kong SAR China 15 68
Honduras Honduras 45 40
Croatia Croatia 64 25
Haiti Haiti 30 54
Hungary Hungary 9 73
Indonesia Indonesia 166 5
Isle of Man Isle of Man 2 80
India India 227 2
Ireland Ireland 28 56
Iran Iran 47 38
Iraq Iraq 19 64
Iceland Iceland 16 67
Israel Israel 50 36
Italy Italy 52 34
Jamaica Jamaica 30 54
Jordan Jordan 20 63
Japan Japan 77 20
Kazakhstan Kazakhstan 14 69
Kenya Kenya 74 22
Kyrgyzstan Kyrgyzstan 3 79
Cambodia Cambodia 48 37
Kiribati Kiribati 14 69
St. Kitts & Nevis St. Kitts & Nevis 30 54
South Korea South Korea 28 56
Kuwait Kuwait 18 65
Laos Laos 55 31
Lebanon Lebanon 28 56
Liberia Liberia 64 25
Libya Libya 32 52
St. Lucia St. Lucia 30 54
Liechtenstein Liechtenstein 0 82
Sri Lanka Sri Lanka 57 30
Lesotho Lesotho 1 81
Lithuania Lithuania 6 76
Luxembourg Luxembourg 1 81
Latvia Latvia 6 76
Macao SAR China Macao SAR China 9 73
Saint Martin (French part) Saint Martin (French part) 31 53
Morocco Morocco 54 32
Monaco Monaco 15 68
Moldova Moldova 8 74
Madagascar Madagascar 111 11
Maldives Maldives 24 59
Mexico Mexico 181 3
Marshall Islands Marshall Islands 18 65
North Macedonia North Macedonia 13 70
Mali Mali 2 80
Malta Malta 22 61
Myanmar (Burma) Myanmar (Burma) 53 33
Montenegro Montenegro 32 52
Mongolia Mongolia 2 80
Northern Mariana Islands Northern Mariana Islands 14 69
Mozambique Mozambique 72 23
Mauritania Mauritania 45 40
Mauritius Mauritius 21 62
Malawi Malawi 36 49
Malaysia Malaysia 87 17
Namibia Namibia 33 51
New Caledonia New Caledonia 37 48
Niger Niger 4 78
Nigeria Nigeria 74 22
Nicaragua Nicaragua 40 45
Netherlands Netherlands 15 68
Norway Norway 23 60
Nepal Nepal 7 75
Nauru Nauru 11 72
New Zealand New Zealand 38 47
Oman Oman 36 49
Pakistan Pakistan 46 39
Panama Panama 57 30
Peru Peru 52 34
Philippines Philippines 91 16
Palau Palau 21 62
Papua New Guinea Papua New Guinea 61 26
Poland Poland 8 74
Puerto Rico Puerto Rico 32 52
North Korea North Korea 20 63
Portugal Portugal 67 24
Paraguay Paraguay 0 82
Palestinian Territories Palestinian Territories 2 80
French Polynesia French Polynesia 28 56
Qatar Qatar 17 66
Romania Romania 22 61
Russia Russia 39 46
Rwanda Rwanda 7 75
Saudi Arabia Saudi Arabia 41 44
Sudan Sudan 32 52
Senegal Senegal 58 29
Singapore Singapore 29 55
Solomon Islands Solomon Islands 24 59
Sierra Leone Sierra Leone 57 30
El Salvador El Salvador 17 66
San Marino San Marino 0 82
Somalia Somalia 31 53
Serbia Serbia 15 68
South Sudan South Sudan 0 82
São Tomé & Príncipe São Tomé & Príncipe 25 58
Suriname Suriname 32 52
Slovakia Slovakia 5 77
Slovenia Slovenia 33 51
Sweden Sweden 15 68
Eswatini Eswatini 5 77
Sint Maarten Sint Maarten 31 53
Seychelles Seychelles 24 59
Syria Syria 51 35
Turks & Caicos Islands Turks & Caicos Islands 30 54
Chad Chad 1 81
Togo Togo 38 47
Thailand Thailand 106 12
Tajikistan Tajikistan 5 77
Turkmenistan Turkmenistan 13 70
Timor-Leste Timor-Leste 13 70
Tonga Tonga 16 67
Trinidad & Tobago Trinidad & Tobago 37 48
Tunisia Tunisia 39 46
Turkey Turkey 131 7
Tuvalu Tuvalu 13 70
Tanzania Tanzania 179 4
Uganda Uganda 60 27
Ukraine Ukraine 24 59
Uruguay Uruguay 45 40
United States United States 251 1
Uzbekistan Uzbekistan 7 75
St. Vincent & Grenadines St. Vincent & Grenadines 29 55
Venezuela Venezuela 45 40
British Virgin Islands British Virgin Islands 31 53
U.S. Virgin Islands U.S. Virgin Islands 29 55
Vietnam Vietnam 83 18
Vanuatu Vanuatu 18 65
Samoa Samoa 16 67
Yemen Yemen 40 45
South Africa South Africa 121 10
Zambia Zambia 20 63
Zimbabwe Zimbabwe 3 79

The indicator of threatened fish species serves as a crucial metric in understanding the health of aquatic ecosystems worldwide. As biodiversity within oceans, rivers, and lakes declines, the status of fish species becomes an alarming barometer for environmental changes. In 2018, the median value of threatened fish species was recorded at 29.0, indicating a significant level of concern for the preservation of aquatic life.

This metric is not just a reflection of fish populations but highlights the interconnected web of ecological relationships. Fish species play vital roles in marine and freshwater ecosystems, serving as both predators and prey, maintaining the balance of food webs. Their decline impacts not only the aquatic environments they inhabit but also the communities that depend on them for sustenance, recreation, and cultural significance. Additionally, threatened fish populations often signal broader environmental issues, such as habitat loss, pollution, and climate change, which can be tied to other marine and terrestrial biodiversity indicators.

The relationships between threatened fish species and other environmental indicators are significant. Factors like water quality, habitat diversity, and overall biodiversity health are interrelated—degraded habitats often correlate with declining fish populations. Furthermore, indicators of human impact, such as overfishing, industrial pollution, and urbanization, can illuminate the pressures placed upon fish habitats. For instance, areas with high industrial activity often reflect higher rates of fish species at risk, as toxic runoff can devastate aquatic life.

Various factors contribute to the predicament faced by threatened fish species. Overfishing is a primary concern, propelled by rising global demand for seafood, leading to unsustainable fishing practices that push fish populations to their limits. Additionally, habitat destruction from coastal development and pollution dramatically impacts breeding grounds and essential ecosystems such as mangroves and coral reefs. Climate change, through ocean acidification and rising sea temperatures, compounds these threats, altering migration patterns and reproductive behaviors of fish species.

The significance of addressing the threats faced by fish species cannot be overstated. This is where effective strategies and solutions come into play. Strengthening regulatory measures concerning fishing quotas, implementing sustainable practices, and promoting aquaculture are pivotal. Protected marine areas where fishing is restricted enable ecosystems to recover and enhance biodiversity, fostering natural resilience. Community involvement in sustainable practices also creates a sense of stewardship that encourages conservation efforts.

International collaborations among nations are critical, especially for migratory fish species that traverse national boundaries. Joint conservation agreements can help manage fish populations more effectively, ensuring healthy ecosystems are maintained for future generations. Education and awareness-raising campaigns can empower local communities, fostering an understanding of the importance of preserving fish species and their habitats.

Despite these strategies, several flaws exist in current approaches to balancing fish conservation with human needs. Economic pressures often prioritize short-term gains over long-term sustainability, leading to compromised efforts. Implementation of regulations can be hindered by insufficient resources for enforcement, creating loopholes for illegal fishing and resource exploitation. Additionally, while marine protected areas are beneficial, they require careful planning and management to maximize their efficacy; poorly designed protected areas may not adequately protect critical habitats.

The data highlights the stark contrast in the status of threatened fish species across different regions. The latest figures from 2017 indicate a staggering count of 8233 threatened fish species globally. The stark discrepancies can be observed when reviewing the top five locations with the highest threatened species counts: the United States leads with 251 threatened fish species, followed closely by India at 227, Mexico at 181, Tanzania at 179, and Indonesia at 166. These figures underline the urgent environmental pressures certain regions face, potentially tied to their economic activities and environmental policies.

On the contrary, countries like Andorra, Liechtenstein, Paraguay, San Marino, and South Sudan reported zero threatened fish species. These lower figures suggest more stable aquatic ecosystems possibly due to less industrial activity or better-managed environmental policies. However, it’s essential to approach this data critically; a lack of reported threatened species does not necessarily equate to environmental health. It raises questions about monitoring capabilities, ecological richness, and whether these countries accurately reflect their biodiversity status.

Ultimately, addressing the alarming status of threatened fish species is a multifaceted challenge that requires a cohesive effort spanning community initiatives, government regulations, and international cooperation. As global citizens, there is a shared responsibility to advocate for sustainable practices that protect our oceans and freshwater ecosystems, ensuring a future where diverse fish populations can thrive.

                    
# 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 = 'EN.FSH.THRD.NO'

# 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 <- 'EN.FSH.THRD.NO'

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