A la découverte des statistiques européennes d'Eurostat

La semaine dernière, j’ai découvert la base de données de l’office statistique de l’Union Européenne : Eurostat. Cette agence a pour mission de fournir, en accès libre, des statistiques validées et harmonisées (autrement dit comparables d’un pays à l’autre) sur l’Europe. Je connaissais cette agence de nom, mais je n’avais encore jamais consulté sa base de données.Et j’ai trouvé ça vraiment intéressant !

D’autant plus, que j’ai aussi découvert qu’il existe un package, également nommé “eurostat” (développé par Leo Lahti et al.), qui propose un certain nombre d’outils pour faciliter l’analyse de ces données statistiques.

Je vous propose donc de découvrir la base de données Eurostat et comment l’analyser avec le package eurostat.

La base de données Eurostat

La base de données est accessible gratuitement ici :

On retrouve alors un arbre de navigation organisé sous la forme de Tableaux et d’une base de données. Les tableaux contiennent seulement une sélection des données présentent dans la base, qui elle contient l’ensemble des données rendues publiques par Eurostats.

En allant dans le détail de l’arbre de navigation, on a alors accès aux fichiers de données disponibles ( en cliquant sur l’icône zip).

logiciel r statistiques européennes

En cliquant sur le premier icône, on a accès à une représentation des données sous la forme d’un tableau. Ici par exemple pour la ligne “Captures dans toutes les régions de pêche (tag00076) ” :

stat européennes R logiciel

D’autres infos sont disponibles à partir des onglets graphiques et carte.

Comme mentionné précédemment, en cliquant sur l‘icone Zip, il est possible de télécharger les données. Celle-ci sont au format.tsv. Pour celles et ceux que ce format inquiéterait, pas de panique, on peut charger directement les fichiers dans R à l’aide du package eurostat (sans se soucier du format) !

Les package eurostat

Le package eurostat dispose d’une feuille aide mémoire disponible sur la page cheatsheet de R Studio .

Installation

Le package s’installe à partir de CRAN, en utilisant l’outil d’installation de R Studio :

package eurostat

Recherche des jeux de données Eurostat par mot clé

Le package eurostat permet de chercher des jeux de données dans la base d’Eurostat en employant la fonction search_eurostat(). Ici nous allons chercher les jeux de données correspondant au mot-clé “fish”.

 library(eurostat)
    files_fish <-search_eurostat("fish", type="table")
    files_fish

    ## # A tibble: 3 x 8
    ##   title code  type  `last update of~ `last table str~ `data start`
    ##                                     
    ## 1 Catc~ tag0~ table 20.11.2018       20.11.2018       2006        
    ## 2 Esti~ sdg_~ table 12.11.2018       12.11.2018       2003        
    ## 3 Asse~ sdg_~ table 12.11.2018       12.11.2018       2003        
    ## # ... with 2 more variables: `data end` , values 

Trois fichiers sont disponibles. Pour avoir une meilleure visibilité, je vous conseille de visualiser le data frame contenant la recherche en double cliquant sur l’objet crée, dans la partie Data de la fenêtre en haut à droite :

statistiques et logiciel r

Cela permet d’ouvrir un tableur, comme dans Excel ! Vous pourrez d’ailleurs appliquer un filtre, ou trier les variables par ordre alphabétique, ou par ordre croissant :

logiciel r statistiques européennes eurostat

Charger un jeu de données

Pour charger un jeu de données, il suffit alors d’utiliser la fonction get_eurostat(), en spécifiant dans l’argument id, le code du fichier désiré. Par exemple, pour le fichier “Catches in all fishing regions” :

fish_catches <- get_eurostat(id="tag00076", time_format = "date")
    fish_catches 

    ## # A tibble: 324 x 6
    ##    species fishreg unit  geo   time         values
    ##                    
    ##  1 F00     0       TLW   BE    2006-01-01   22519.
    ##  2 F00     0       TLW   BG    2006-01-01    5630.
    ##  3 F00     0       TLW   CY    2006-01-01    2098.
    ##  4 F00     0       TLW   DE    2006-01-01  276078.
    ##  5 F00     0       TLW   DK    2006-01-01  867803.
    ##  6 F00     0       TLW   EE    2006-01-01   83940.
    ##  7 F00     0       TLW   EL    2006-01-01   96695.
    ##  8 F00     0       TLW   ES    2006-01-01  680739.
    ##  9 F00     0       TLW   EU28  2006-01-01 5253811.
    ## 10 F00     0       TLW   FI    2006-01-01  112933.
    ## # ... with 314 more rows 

Le jeu de données est alors chargé en format long. Sur le site d’Eurostat, il y avait une colonne par année. Dans le jeu de données chargé, les données des différentes années sont les unes sous les autres, et une nouvelle colonne “time” a été créée. Pour plus d’info sur le format long, vous pouvez consulter cet article.

 

Pourquoi en format long ? Parce que c’est plus pratique pour manipuler les données avec le package dplyr et les visualiser avec le package ggplot2.

Ajouter des labels

Grace à la fonction label_eurostat(), vous pouvez rendre certaines modalités de variables plus intelligibles :

fish_catches2 <-label_eurostat(fish_catches)
    fish_catches2

    ## # A tibble: 324 x 6
    ##    species      fishreg     unit      geo                time       values
    ##                                            
    ##  1 All aquatic~ Total fish~ Tonnes l~ Belgium            2006-01-01 2.25e4
    ##  2 All aquatic~ Total fish~ Tonnes l~ Bulgaria           2006-01-01 5.63e3
    ##  3 All aquatic~ Total fish~ Tonnes l~ Cyprus             2006-01-01 2.10e3
    ##  4 All aquatic~ Total fish~ Tonnes l~ Germany (until 19~ 2006-01-01 2.76e5
    ##  5 All aquatic~ Total fish~ Tonnes l~ Denmark            2006-01-01 8.68e5
    ##  6 All aquatic~ Total fish~ Tonnes l~ Estonia            2006-01-01 8.39e4
    ##  7 All aquatic~ Total fish~ Tonnes l~ Greece             2006-01-01 9.67e4
    ##  8 All aquatic~ Total fish~ Tonnes l~ Spain              2006-01-01 6.81e5
    ##  9 All aquatic~ Total fish~ Tonnes l~ European Union (c~ 2006-01-01 5.25e6
    ## 10 All aquatic~ Total fish~ Tonnes l~ Finland            2006-01-01 1.13e5
    ## # ... with 314 more ro 

Ici par exemple la variable geo contient à présent les noms entier des pays.

Manipulation avec la package dplyr

Par exemple, si je veux calculer la moyenne des pêches pour chaque pays, entre 2006 et 2017, et les ordonner de la plus grande à la plus petite:

library(dplyr)
    fish_catches2 %>%
        group_by(geo) %>%
        summarise(avg=mean(values, na.rm=TRUE))%>%
        arrange(desc(avg))

    ## # A tibble: 27 x 2
    ##    geo                                       avg
    ##                                       
    ##  1 European Union (current composition) 4948667.
    ##  2 Norway                               2209593.
    ##  3 Iceland                              1241532.
    ##  4 Spain                                 823436.
    ##  5 Denmark                               741067.
    ##  6 United Kingdom                        642694.
    ##  7 France                                505265.
    ##  8 Turkey                                482720.
    ##  9 Netherlands                           366484.
    ## 10 Ireland                               244677.
    ## # ... with 17 more rows 

Ou encore, si je veux conserver uniquement les données de la France :

fish_catches2 %>%
        filter(geo=="France")

    ## # A tibble: 12 x 6
    ##    species          fishreg         unit           geo   time       values
    ##                                            
    ##  1 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2006-01-01 5.83e5
    ##  2 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2007-01-01 5.49e5
    ##  3 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2008-01-01 4.90e5
    ##  4 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2009-01-01 4.30e5
    ##  5 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2010-01-01 4.40e5
    ##  6 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2011-01-01 4.87e5
    ##  7 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2012-01-01 4.61e5
    ##  8 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2013-01-01 5.29e5
    ##  9 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2014-01-01 5.44e5
    ## 10 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2015-01-01 4.97e5
    ## 11 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2016-01-01 5.25e5
    ## 12 All aquatic org~ Total fishing ~ Tonnes live w~ Fran~ 2017-01-01 5.29e5
Pour plus d'exemples de manipulation avec le package dplyr, consultez cet article. 
Pour plus d’exemples de manipulation avec le package dplyr, consultez cet article.

Visualisation

Par exemple, pour représenter l’évolution, dans le temps, des prises des 5 pays estimés comme étant les plus gros pécheurs :

top5 <- fish_catches2 %>%
        filter(geo %in% c("Norway","Iceland", "Spain","Denmark","United Kingdom" ))

library(ggplot2)
ggplot(top5, aes(y=values, x=time, colour=geo)) +
            geom_point(size=2)+
            geom_line(size=1.25) 

Cartographie

Le package propose également des fonctions pour réaliser des cartographies. Voici un exemple tiré de la vignette du package :

dat <- get_eurostat("tgs00026", time_format = "raw", stringsAsFactors = FALSE) %>%
    # subsetting to year 2014 and NUTS-2 level
    dplyr::filter(time == 2014, nchar(geo) == 4) %>%
    # classifying the values the variable
    dplyr::mutate(cat = cut_to_classes(values))
    geodata <- get_eurostat_geospatial(resolution = "60", nuts_level = "2", year = 2013)
    map_data <- inner_join(geodata, dat)

    ggplot(data=map_data) + geom_sf(aes(fill=cat),color="dim grey", size=.1) +
    scale_fill_brewer(palette = "Oranges") +
    guides(fill = guide_legend(reverse=T, title = "euro")) +
    labs(title="Disposable household income in 2014",
    caption="(C) EuroGeographics for the administrative boundaries
    Map produced in R with a help from Eurostat-package <github.com/ropengov/eurostat/>") +
    theme_light() + theme(legend.position=c(.8,.8)) +
    coord_sf(xlim=c(-12,44), ylim=c(35,70)) 

Pour aller plus loin:

Vous trouverez d’autres informations, pour aller plus loin dans l’exploitation des données d’Eurostat avec le package eurostat, en consultant :

J’espère que cet article vous donnera envie d’aller jeter un coup d’œil sur les données européennes disponibles dans la base de données d’Eurostat. Mais aussi que la simplicité d’utilisation du package eurostat vous donnera envie de les regarder d’encore plus près !

Si cet article vous a plu, ou vous a été utile, et si vous le souhaitez, vous pouvez soutenir ce blog en faisant un don sur sa page Tipeee 🙏

Crédit photo : openclipart.

2 réponses

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *