Exploration

Cette page présente une exploration des différentes données ainsi qu’une analyse descriptive et statistique des ces différentes variables.
Auteur·rice
Affiliation
Date de publication

21 décembre 2022

NB : Ouvrir la bribe de code pour voir les packages nécessaires à l’importation et la manipulation des données.

Code
library(tidyverse)
library(fs)
library(lubridate)
library(skimr)
library(gapminder)
library(countrycode)
library(cronR)
library(modelsummary)
library(patchwork)
library(wesanderson)

df_owid <- read_csv("data/processed/dat_CO2.csv", show_col_types = FALSE)

df_gapminder <- read_csv("data/processed/datgm.csv", show_col_types = FALSE)

dat_join <- read_csv("data/processed/datultimate.csv", show_col_types = FALSE)

Statistiques descriptives

Life Expectancy at Birth

La première est celle du Life Expectancy qui comprend au total 5 variables et plus de 56616 observations. Cette banque de données et mis à jour régulièrement et continent des observations pour :

  • Un total de 195 pays

  • Calculées depuis 1800 et estiment l’espérance de vie moyenne pour les différents pays jusqu’en 2100.

  • La banque de donnée regroupe les pays sous les 5 continents principaux soit l’Afrique, les Amériques, l’Asie, l’Europe et l’Océanie.

Voici notamment un récapitulatif des données.

Code
skim(df_gapminder)
Data summary
Name df_gapminder
Number of rows 56616
Number of columns 5
_______________________
Column type frequency:
character 3
numeric 2
________________________
Group variables None

Variable type: character

skim_variable n_missing complete_rate min max empty n_unique whitespace
geo 0 1 3 3 0 195 0
country 0 1 3 30 0 195 0
continent 0 1 4 8 0 5 0

Variable type: numeric

skim_variable n_missing complete_rate mean sd p0 p25 p50 p75 p100 hist
year 0 1 1950.38 86.51 1800.00 1876.0 1952.00 2024.00 2100.00 ▇▇▇▇▇
life_exp 0 1 53.35 21.32 1.01 32.9 50.02 73.96 94.42 ▁▇▃▅▅

Our World in Data, Co2

La banque de données est @ qui a comme but principal de décrire comment les émissions de Co2 et de gaz à effets de serres évoluent dans le temps.

La banque de données présentent plus de :

  • 75 variables comme le PIB, le nombre d’habitants dans le pays, l’année et une variable qui a été ajouté et celle qui regroupe les pays sous les 5 continents,

  • Différentes mesures pour le Co2 comme l’émissions brutes, l’accumulation ou bien le rendement par énergie dépensé, etc.

  • Les données enregistrées sont mise à jour de manière presqu’hebdomadaire et ont des observations débutants en 1750.

Pour mieux comprendre les variables, le tableau suivant propose le codebook suivant, adapté du codebook original .

Variable Description + Type
Country pays (character)
Year année de l’observation (numérique)
Iso_code code du pays selon la codification internationale 3166-1 (character)
Population Nombre total de la population selon le pays (numérique)
GDP (PIB) Produit interieur brut mesuré en dollars (numérique)
CO2 Mesure annuelle de la production totale de CO2 par pays, mesuré en en millions de tonnes et excluant l’UTCATF (numérique)
Cement_CO2_per_capita Mesure annuelle de la production totale de CO2 générée par le ciment, par personne, en millions de tonnes (numérique)
CO2_per_gdp Mesure annuelle de la production totale de CO2 selon le PIB, excluant l’UTCATF (numérique)
coal_co2 Mesure annuelle par pays de la production de CO2 générée par le charbon, en millions de tonnes (numérique)
coal_co2_per_capita Mesure annuelle de la production de CO2 générée par le charbon, mesurée en million de tonnes par personnes (numérique)
methane Total annuel des émissions de méthane par pays, incluant l’UTCATF, mesuré en millions de tonnes (numérique)
methane_per_capita Total annuel des émissions de méthane par habitant, incluant l’UTCATF, mesuré en millions de tonnes (numérique)
oil_co2 Mesure annuelle par pays de la production de CO2 générée par le pétrole, en millions de tonnes (numérique)
oil_co2_per_capita Mesure annuelle de la production de CO2 générée par le pétrole, mesurée en million de tonnes par personnes (numérique)
ghg_per_capita Total des émissions de gas à effet de serres par personne, mesuré en tonne de de millions, incluant l’UTCATF (numérique)
trade_co2 Total annuel des émissions de C02, issu du commerce, mesuré en million de tonne. (Ici une valeur positive veut dire qu’un pays est un importeur net d’émission de CO2 ; une valeur négative veut dire qu’un pays est un exporteur net d’émission de CO2).

Voici notamment un récapitulatif des données :

Code
skim(df_owid)
Data summary
Name df_owid
Number of rows 46523
Number of columns 19
_______________________
Column type frequency:
character 3
numeric 16
________________________
Group variables None

Variable type: character

skim_variable n_missing complete_rate min max empty n_unique whitespace
country 0 1.00 4 32 0 269 0
iso_code 6661 0.86 3 3 0 232 0
continent 6583 0.86 4 8 0 5 0

Variable type: numeric

skim_variable n_missing complete_rate mean sd p0 p25 p50 p75 p100 hist
year 0 1.00 1.925690e+03 6.104000e+01 1750.00 1882.00 1.930000e+03 1.977000e+03 2.021000e+03 ▁▂▇▇▇
population 7949 0.83 6.005374e+07 3.280828e+08 21.00 380891.25 2.509282e+06 9.996447e+06 7.909295e+09 ▇▁▁▁▁
gdp 31972 0.31 2.679977e+11 2.104075e+12 49980000.00 7530492928.00 2.605900e+10 1.134711e+11 1.136302e+14 ▇▁▁▁▁
co2 15174 0.67 3.799900e+02 1.799880e+03 0.00 0.12 3.110000e+00 4.366000e+01 3.712385e+04 ▇▁▁▁▁
cement_co2_per_capita 23809 0.49 6.000000e-02 1.200000e-01 0.00 0.00 0.000000e+00 9.000000e-02 2.570000e+00 ▇▁▁▁▁
co2_per_gdp 30232 0.35 4.200000e-01 5.600000e-01 0.00 0.14 2.800000e-01 5.300000e-01 3.761000e+01 ▇▁▁▁▁
coal_co2 21454 0.54 1.544000e+02 7.514200e+02 0.00 0.00 6.600000e-01 1.648000e+01 1.505151e+04 ▇▁▁▁▁
coal_co2_per_capita 22102 0.52 1.100000e+00 2.230000e+00 0.00 0.00 9.000000e-02 1.140000e+00 3.423000e+01 ▇▁▁▁▁
gas_co2 21580 0.54 4.999000e+01 3.090900e+02 0.00 0.00 0.000000e+00 1.240000e+00 7.921830e+03 ▇▁▁▁▁
gas_co2_per_capita 22183 0.52 5.300000e-01 2.290000e+00 0.00 0.00 0.000000e+00 8.000000e-02 5.331000e+01 ▇▁▁▁▁
methane 40373 0.13 1.456500e+02 6.509400e+02 0.00 2.11 9.430000e+00 3.766000e+01 8.609920e+03 ▇▁▁▁▁
methane_per_capita 40403 0.13 1.840000e+00 2.550000e+00 0.00 0.68 1.050000e+00 1.750000e+00 3.368000e+01 ▇▁▁▁▁
oil_co2 21481 0.54 1.112300e+02 6.240300e+02 0.00 0.08 1.240000e+00 1.310000e+01 1.234565e+04 ▇▁▁▁▁
oil_co2_per_capita 22156 0.52 2.200000e+00 1.491000e+01 0.00 0.04 3.800000e-01 1.970000e+00 8.244600e+02 ▇▁▁▁▁
ghg_per_capita 40404 0.13 7.540000e+00 8.010000e+00 -30.81 2.57 5.420000e+00 9.860000e+00 7.367000e+01 ▁▇▂▁▁
trade_co2 42264 0.09 -8.700000e+00 2.692100e+02 -2354.78 -3.15 1.480000e+00 9.030000e+00 2.211850e+03 ▁▁▇▁▁

Combinaison des banques de données

On peut également entreprendre des analyses via la combinaison des deux banques de données puisqu’elles ont comme variables communes les années, les continents ainsi que la majorité des pays observés.

Voici un récapitulatif des données :

Code
skim(dat_join)
Data summary
Name dat_join
Number of rows 30752
Number of columns 21
_______________________
Column type frequency:
character 4
numeric 17
________________________
Group variables None

Variable type: character

skim_variable n_missing complete_rate min max empty n_unique whitespace
country 0 1 4 24 0 179 0
iso_code 0 1 3 3 0 179 0
continent 0 1 4 8 0 5 0
geo 0 1 3 3 0 179 0

Variable type: numeric

skim_variable n_missing complete_rate mean sd p0 p25 p50 p75 p100 hist
year 0 1.00 1.932970e+03 5.269000e+01 1800.00 1889.00 1.934000e+03 1.978000e+03 2.021000e+03 ▁▇▇▇▇
population 0 1.00 1.724825e+07 7.673945e+07 2258.00 632758.50 2.798558e+06 9.049654e+06 1.425894e+09 ▇▁▁▁▁
gdp 16892 0.45 2.345079e+11 9.604280e+11 49980000.00 7700199680.00 2.681054e+10 1.165083e+11 1.815162e+13 ▇▁▁▁▁
co2 10954 0.64 8.444000e+01 4.461100e+02 0.00 0.33 3.520000e+00 2.757000e+01 1.147237e+04 ▇▁▁▁▁
cement_co2_per_capita 14801 0.52 8.000000e-02 1.400000e-01 0.00 0.00 2.000000e-02 1.000000e-01 2.570000e+00 ▇▁▁▁▁
co2_per_gdp 17895 0.42 3.800000e-01 5.200000e-01 0.00 0.13 2.500000e-01 4.800000e-01 3.761000e+01 ▇▁▁▁▁
coal_co2 12395 0.60 4.298000e+01 2.651700e+02 0.00 0.00 4.200000e-01 7.360000e+00 7.955980e+03 ▇▁▁▁▁
coal_co2_per_capita 12395 0.60 1.020000e+00 2.280000e+00 0.00 0.00 6.000000e-02 9.100000e-01 3.423000e+01 ▇▁▁▁▁
gas_co2 12389 0.60 1.376000e+01 8.114000e+01 0.00 0.00 0.000000e+00 1.110000e+00 1.674000e+03 ▇▁▁▁▁
gas_co2_per_capita 12389 0.60 6.100000e-01 2.600000e+00 0.00 0.00 0.000000e+00 9.000000e-02 5.331000e+01 ▇▁▁▁▁
methane 25442 0.17 4.127000e+01 1.134200e+02 0.00 2.26 9.420000e+00 3.138000e+01 1.176340e+03 ▇▁▁▁▁
methane_per_capita 25442 0.17 1.910000e+00 2.690000e+00 0.00 0.67 1.040000e+00 1.830000e+00 3.368000e+01 ▇▁▁▁▁
oil_co2 12389 0.60 3.036000e+01 1.500200e+02 0.00 0.12 1.440000e+00 1.061000e+01 2.644240e+03 ▇▁▁▁▁
oil_co2_per_capita 12389 0.60 1.490000e+00 4.220000e+00 0.00 0.05 3.600000e-01 1.680000e+00 3.467900e+02 ▇▁▁▁▁
ghg_per_capita 25443 0.17 7.690000e+00 8.400000e+00 -30.81 2.49 5.400000e+00 1.029000e+01 7.367000e+01 ▁▇▂▁▁
trade_co2 27208 0.12 -6.200000e-01 1.071200e+02 -1526.51 -1.17 1.730000e+00 8.620000e+00 6.595500e+02 ▁▁▁▇▁
life_exp 0 1.00 4.747000e+01 1.698000e+01 1.01 32.89 4.202000e+01 6.327000e+01 8.514000e+01 ▁▇▇▅▅

Graphiques

Life Expectancy

Manipulation pour calculer la moyenne mondiale et par continent.

Code
life_exp_world <- df_gapminder |> 
    group_by(continent,
             year) |> 
    mutate(mean_continent = mean(life_exp, na.rm = TRUE)) |> 
    ungroup() |> 
    group_by(year) |> 
    mutate(mean_world = mean(life_exp, na.rm = TRUE))

Manipulation pour le graphique mondial

Code
graph_life_world <-  
    ggplot(data = life_exp_world,
           aes(x = year,
               y = mean_world)) +
    geom_line(color = "#B1746FFF") +
    scale_x_continuous(limits = c(1800, 2100),
                       breaks = seq(1800, 2100, by = 25)) +
    scale_y_continuous(limits = c(10, 90),
                       breaks = seq(0, 90, by =10)) +
    theme_minimal() + 
    labs(title = "Évolution de l'espérance de vie mondiale",
         caption = "https://www.gapminder.org/data/",
         x = " ",
         y = "Espérance de vie moyenne")

graph_life_world

Code
ggsave("graph_life_world.png", plot = graph_life_world, path = "figures")

Manipulation pour le graphique de l’espérance de vie moyenne par continent

Code
graph_life_continent <- ggplot() +
    geom_line(data = life_exp_world,
             aes(x = year,
                 y = mean_continent,
                 color = continent)) +
    scale_x_continuous(limits = c(1800, 2100),
                       breaks = seq(1800, 2100, by = 25)) +
    scale_y_continuous(limits = c(10, 90),
                       breaks = seq(0, 90, by =10)) +
    scale_color_manual(values= wes_palette("Moonrise3", n = 5),
                       name = "Continents",
                         labels = c("Afrique",
                                    "Amériques",
                                    "Asie",
                                    "Europe",
                                    "Océanie")) +
    theme_minimal() +
    labs(title = "Évolution de l'espérance de vie",
         subtitle = "Par continents",
         caption = "https://www.gapminder.org/data/",
         x = " ",
         y = "Espérance de vie moyenne") 

graph_life_continent

Code
ggsave("graph_life_continent.png", plot = graph_life_continent, path = "figures")

Il est possible aussi d’observer l’évolution de l’espérance de vie moyenne en fonction des continents. Les grandes cassures dans le temps peuvent être attribuables à différentes périodes historiques.

Notamment, la grand cassure avant les années 1920 peuvent être à la fois attribuables à la Première Guerre mondiale, mais également à l’épidémie de la Grippe espagnole. La même tendance est observable dans les années 1940 pour la Seconde Guerre mondiale et plus récemment, la légère fracture pour la pandémie de la COVID-19.

Co2

Manipulation des données pour calculer l’émission de Co2 mondiale

Code
co2_world <- df_owid |> 
    filter(country == "World") |> 
    select(co2,
           year,
           country)

co2_world$co2 <- co2_world[, "co2"]/1000

Manipulation pour le graphique des émissions de co2 mondiale.

Code
graph_co2_world <- ggplot(data = co2_world,
       aes(x = year,
           y = co2$co2)) +
    geom_line(color = "#B1746FFF") +
    scale_x_continuous(limits = c(1750, 2025),
                       breaks = seq(1750, 2025, by = 25)) +
    scale_y_continuous(limits = c(0, 40),
                       breaks = seq(0, 40, by = 5)) +
    geom_point(size = 0.3,
               color = "#B1746FFF") +
    labs(title = "Émission de Co2 mondial",
         caption = "https://ourworldindata.org/co2-emissions",
         x = "Années",
         y = "En millards de tonnes") +
    theme_minimal()

graph_co2_world

Code
ggsave("graph_co2_world.png", graph_co2_world, path = "figures")

Manipulation des données pour calculer l’émission de Co2 par continent :

Code
co2_continent <- df_owid |> 
    mutate(continent2 = case_when(country == "Africa" ~ "Afrique",
                                  country == "Asia" ~ "Asie",
                                  country == "Europe" ~ "Europe",
                                  country == "Oceania" ~ "Océanie",
                                  continent == "Americas" ~ "Amérique")) 


co2_continent <- co2_continent |> 
    filter(!is.na(continent2),
           !is.na(co2)) |> 
    select(year,
           co2,
           continent2) |> 
    group_by(continent2)


co2_continent$co2 <- co2_continent[, "co2"]/1000

# test <- co2_continent |> 
#     filter(continent2 == "Amérique") |> 
#     group_by(year) |> 
#         select(year,
#            co2,
#            continent2)

Manipulation pour le graphique des émissions de co2 par continent :

Code
graph_co2_continent <- 
    ggplot(data = co2_continent,
           aes(x = year,
               y = co2$co2,
               color = continent2)) +
    geom_line() +
    scale_color_manual(values= wes_palette("Moonrise3", n = 5),
                       name = "Continents",
                       labels = c("Afrique",
                                  "Amériques",
                                  "Asie",
                                  "Europe",
                                  "Océanie")) +
    labs(title = "Émission de Co2 par continent",
         caption = "https://ourworldindata.org/co2-emissions",
         x = "Années",
         y = "En millards de tonnes") +
    theme_minimal()

graph_co2_continent

Code
ggsave("graph_co2_continent.png", graph_co2_continent, path = "figures")

Data combiné

Manipulation pour voir si le PIB a une influence sur l’espérance de vie moyenne au fil des ans, par continent.

Les données pour le PIB proviennent de Our world in Data et celles pour l’espérance de vie de Life Expectancy

Code
graph_life_gdp <- dat_join |> 
    mutate(gdp = log(gdp)) |> 
    
    ggplot(aes(x = gdp,
               y = life_exp)) +
    geom_point(aes(color = continent),
               size = 0.2,
               alpha = 0.5) +
    scale_color_manual(values= wes_palette("Moonrise3", n = 5)) +
    scale_x_continuous(limits = c(20, 28),
                       breaks = seq(20, 28, by = 4)) +
    facet_grid(~ continent) +
    theme_minimal() +
    theme(legend.position = "none") +
    labs(title = "Espérance de vie par PIB",
         caption = "Gapminder et Our World in Data",
         x = "PIB en log",
         y = "Espérance moyenne")

graph_life_gdp
Warning: Removed 17681 rows containing missing values (geom_point).

Code
ggsave("graph_life_gdp.png", graph_life_gdp, path = "figures")
Saving 7 x 5 in image
Warning: Removed 17681 rows containing missing values (geom_point).

filter(continent != “Oceania”) %>% mutate(across(where(is.numeric), log)) %>% ggplot(aes(x = lifeExp, y = gdpPercap)) + geom_point(aes(color = continent), size = 3, alpha = 0.8) + # facet_wrap(~factor(continent)) + hrbrthemes::theme_ft_rc() + ggtitle(“GDP per capita and life expectancy”) + theme(legend.title = element_blank(), legend.text = element_text(size = 20), plot.title = element_text(size = 30)) + scale_color_manual(values= wes_palette(“FantasticFox1”, n = 4)) +

Citation

BibTeX
@online{amadoroetjulietteleblanc2023,
  author = {Cécile Amadoro et Juliette Leblanc},
  title = {Exploration},
  date = {2023-09-12},
  url = {https://VOTREUSERNAME.github.io/FAS1002_projet-final//exploration.html},
  langid = {fr}
}
Veuillez citer ce travail comme suit :
Cécile Amadoro et Juliette Leblanc. 2023. “Exploration.” September 12, 2023. https://VOTREUSERNAME.github.io/FAS1002_projet-final//exploration.html.