Earth Climate Observations
A collection of geospatial and environmental data analysis applications using Python.
Repository Structure
data/ - datasets
src/ - reusable code
figures/ - generated plots and maps
Current Project titled "Earth Climate Analysis Using Environmental and Economic Indicators"
This project applies statistical analysis, ML and data visualisations to understand how development, land use and energy structure relate to CO₂ emissions and wether countries can be clustered into specific profiles.
Key Questions
1- Which countries emit the most CO₂ per person?
2- What is the relationships between GDP, population, forests, agriculture, renewable energy consumption and emissions?
3- Can countries be clustered into specific related profiles?
4- Which factors are strongly correlated with emissions?
The project currently uses the following data from World Bank Open Data:
CO₂ contribution per capita: https://data.worldbank.org/indicator/EN.GHG.CO2.PC.CE.AR5
CO₂ global contribution: https://data.worldbank.org/indicator/EN.GHG.CO2.MT.CE.AR5
Forest area: https://data.worldbank.org/indicator/AG.LND.FRST.ZS
Agricultural area: https://data.worldbank.org/indicator/AG.LND.AGRI.ZS
Renewable energy consumption: https://data.worldbank.org/indicator/EG.FEC.RNEW.ZS
GDP per capita: https://data.worldbank.org/indicator/NY.GDP.MKTP.KD
Population: https://data.worldbank.org/indicator/SP.POP.TOTL
Project Workflow:
1- Data gathering and cleaning
2- Statistical and correlation estimations
3- Visualisations
4- Supervised and unsupervised learning analysis
Tools and Components:
1- Data Processing using pandas, geopandas
2- Statistics, scatter plots, heatmaps and geographic mapping using seaborn, umap and matplotlib
3- HDBSCAN clustering and GLOSH outlier detection (unsupervised learning) using hdbscan library in Python
4- Random forest and feature importance (supervised learning) using sklearn library in Python
Notes: The dataset renewable energy consumption contains significant missing data, therefore the HDBSCAN clustering was performed in one run without this variable and in the next with the full avaiable datasets.
KEY FINDINGS:
Derived Patterns
- CO₂ per capita, GDP per capita, and population are highly right-skewed
- Large-scale inequalities are present in emission, income and population size.
- Forest and agriculture variables show relatively symmetric distributions.
➡️ CO₂ emissions are highly concentrated in a small cluster of high income and high population countries.
Correlations
- GDP ↔ CO₂ per capita: moderate positive (~0.47)
- Renewables ↔ GDP: moderate negative (~-0.50)
- Forest ↔ Agriculture: moderate negative (~-0.48)
- Renewables ↔ CO₂: weak negative (~-0.21)
➡️ High income countries contribute significantly more to emissions, while the correlation between forest and agriculture is expected. On the other hand, even though renewable energy consumption has lower than expected correlation, one should keep in mind that this dataset has incomplete country coverage.
Land Dynamics
- Countries with large number of forests often have minimal agriculture, such as Gabon and Suriname.
- Few high income developed countries maintain high forest area, such as Japan and Sweden.
- Clear trade-off between forest and agricultural land use.
➡️ Land dynamics are not only driven by income level, but also geography and development.
Renewable Energy vs CO₂ Emission
- Most countries cluster at lower values ~ less than 10 tons CO₂ per capita.
- No strong relationship is observed between the two variables, and the results are influenced by outliers.
➡️ No conclusive statements can be derived as the renewable energy consumption dataset lacks coverage of all countries. Therefore, more data and coverage are required to draw a solid conclusion.
Supervised Machine Learning
- R² ≈ 0.65
- Indicating that the model explains a moderate proportion of variance in emissions.
Feature importance:
- GDP per capita (~0.67)
- Agriculture (~0.12)
- Renewables (~0.10)
- Forest area (~0.06)
- Population (~0.04)
➡️ Economic development is the major driver of emissions
Unsupervised Machine Learning
Two clustering configurations were compared:
1- Without renewable energy consumption
Weak unstable clustering with DBCV = 0.189 and limited separations.
2- With renewable energy consumption
Clearer and better structured clustering with DBCV = 0.330. The clusters span low-income agrarian countries, middle-income countries and high income (outlier) countires.
➡️ Adding renewable energy consumption rates allows for better structuring and more meaningful interpretations.
Main Conclusion
Economic development is the primary driver of CO₂ emissions, while land dynamics and renewable energies provide minor patterns. On the other hand, the machine learning algorithms results point to the same conclusion, while also revealing some clear environmental-economic archetypes.
Author
Dr. Basel Ali


