Titre: Projet R Data Viz
Nom: Nouran GHALIOUNJI
Pacours: M1 BIDADI
Nous avons une basé de données sous forme de fichier Excel qui inclut les variables suivantes:
Variables environnementales :
Environment Pillar Score: mesure de la performance environnementale de l’entreprise. Il s’agit de la composante E de la norme ESG
Carbon Intensity per Energy Produced : Mesure relative aux émissions de CO2
Variables économiques et commerciales
EMPLOYEES (EMP) : nombre d’employés par entreprise comme mesure de la taille de l’entreprise
OPERATING PROFIT MARGIN (MARGIN) : profit opérationnel de l’entreprise
NET SALES OR REVENUES (SALES) : les revenus commerciaux nets
Variables financières
Market Cap (MCAP): capitalisation boursière de l’entreprise
RETURN ON INVESTED CAPITAL (RCAP): le rendement du capital investi
Plusieurs Variables PRIX : o 1-day Price PCT Change o 5-day Price PCT Change o 4-week Price PCT Change o 13-week Price PCT Change o 26-week Price PCT Change o YTD Price PCT Change o 52-week Price PCT Change o Price 52 Week High
Variables de gouvernance
Le but de notre travail est de saisir l’impact des variables économiques, financières, et de gouvernance des entreprises listées dans notre base de données sur notre variable environnemental: le score environnemental.
Tout au long de notre travail on va tenter d’analyser nos données, et de prendre des décision dont le but ultime est de construire le modèle le moins biaisé possible.
On commence tout d’abord pour importer dans notre environnement les libraries nécessaires pour le travail
library('readxl')
library('dplyr')
##
## Attachement du package : 'dplyr'
## Les objets suivants sont masqués depuis 'package:stats':
##
## filter, lag
## Les objets suivants sont masqués depuis 'package:base':
##
## intersect, setdiff, setequal, union
library('dplyr')
library('ggplot2')
#Elle nous permettera de lire les résumés summary de manière plus lisible
library('pander')
#On désactive les altertes
options(warn=-1)
Partie 1:
On importe tout d’abord le jeu de données qui est sous forme de fichier Excel qu’on stockera dans le dataframe ‘eurostoxx’
eurostoxx<-read_excel("C:/Users/Visiteur/Downloads/Projet R/variables_EuroStoxx600.xlsx")
## New names:
## • `` -> `...1`
View(eurostoxx)
summary(eurostoxx)
## ...1 Identifier (RIC) Company Name Market Cap\r\n(Σ=Avg)
## Min. : 1.0 Length:600 Length:600 Min. :1.480e+09
## 1st Qu.:150.8 Class :character Class :character 1st Qu.:5.548e+09
## Median :300.5 Mode :character Mode :character Median :1.386e+10
## Mean :300.5 Mean :4.050e+10
## 3rd Qu.:450.2 3rd Qu.:3.639e+10
## Max. :600.0 Max. :1.322e+12
##
## 1-day Price PCT Change\r\n(Σ=Avg) 5-day Price PCT Change\r\n(Σ=Avg)
## Min. :-0.051041 Min. :-0.179707
## 1st Qu.: 0.009273 1st Qu.:-0.015761
## Median : 0.020902 Median : 0.007905
## Mean : 0.021824 Mean : 0.008012
## 3rd Qu.: 0.031834 3rd Qu.: 0.031576
## Max. : 0.127511 Max. : 0.319608
##
## 4-week Price PCT Change\r\n(Σ=Avg) 13-week Price PCT Change\r\n(Σ=Avg)
## Min. :-0.319034 Min. :-0.56503
## 1st Qu.:-0.111113 1st Qu.:-0.19708
## Median :-0.054442 Median :-0.11217
## Mean :-0.054558 Mean :-0.09933
## 3rd Qu.:-0.001157 3rd Qu.:-0.00910
## Max. : 0.307981 Max. : 0.89705
##
## 26-week Price PCT Change\r\n(Σ=Avg) YTD Price PCT Change\r\n(Σ=Avg)
## Min. :-0.75714 Min. :-0.70571
## 1st Qu.:-0.28356 1st Qu.:-0.26691
## Median :-0.15780 Median :-0.15225
## Mean :-0.14140 Mean :-0.13650
## 3rd Qu.:-0.02425 3rd Qu.:-0.01928
## Max. : 1.08930 Max. : 1.21406
## NA's :1
## 52-week Price PCT Change\r\n(Σ=Avg) Price 52 Week High\r\n(Σ=Avg)
## Min. :-0.73172 Min. : 0.51
## 1st Qu.:-0.19871 1st Qu.: 51.73
## Median :-0.05979 Median : 161.43
## Mean :-0.04575 Mean : 1000.63
## 3rd Qu.: 0.08607 3rd Qu.: 580.15
## Max. : 1.94601 Max. :123800.00
## NA's :8
## Price 52 Week Low\r\n(Σ=Avg) Average Daily Volume - 10 Days\r\n(Σ=Avg)
## Min. : 0.22 Min. : 81
## 1st Qu.: 31.68 1st Qu.: 341033
## Median : 98.64 Median : 943849
## Mean : 633.10 Mean : 3594945
## 3rd Qu.: 316.92 3rd Qu.: 2782133
## Max. :88300.00 Max. :187243208
##
## Average Daily Volume - 3 Months\r\n(Σ=Avg) ISIN
## Min. : 96 Length:600
## 1st Qu.: 349126 Class :character
## Median : 956769 Mode :character
## Mean : 4312179
## 3rd Qu.: 3020019
## Max. :239153217
##
## COUNTRY OF DOMICIL EMPLOYEES OPERATING PROFIT MARGIN
## Length:600 Length:600 Length:600
## Class :character Class :character Class :character
## Mode :character Mode :character Mode :character
##
##
##
##
## OPERATING INCOME NET SALES OR REVENUES Environment Pillar Score
## Length:600 Length:600 Length:600
## Class :character Class :character Class :character
## Mode :character Mode :character Mode :character
##
##
##
##
## CSR Sustainability Committee RETURN ON INVESTED CAPITAL
## Length:600 Length:600
## Class :character Class :character
## Mode :character Mode :character
##
##
##
##
## Value - Board Structure/Independent Board Members
## Length:600
## Class :character
## Mode :character
##
##
##
##
## Value - Board Structure/Strictly Independent Board Members
## Length:600
## Class :character
## Mode :character
##
##
##
##
## Carbon Intensity per Energy Produced
## Length:600
## Class :character
## Mode :character
##
##
##
##
Lorsqu’on execute la fonction str pour voir la structure de la colonne carbonne intensity per energy producted, on remarque que les ‘NA’ qui sont les valeurs manquantes sont stockés tel que des chaînes de caractère. Dans cette étude on doit s’en tenir à la première variable qui est Environement Pillar Score (EPS) car la variable Carbon Intensity per Energy produced est manquante pour la plupart des observations
str(eurostoxx$`Carbon Intensity per Energy Produced`)
## chr [1:600] "NA" "NA" "NA" "NA" "NA" "NA" "NA" "NA" "NA" "NA" "NA" "NA" ...
On vérifie une seconde fois avec la fonction is NA et on voit bien ici que R ne reconnaît pas les chaines de caractères ‘NA’ tel que des valeurs manquantes.
is.na(eurostoxx$'Carbon Intensity per Energy Produced')
## [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [13] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [25] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [37] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [49] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [61] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [73] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [85] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [97] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [109] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [121] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [133] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [145] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [157] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [169] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [181] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [193] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [205] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [217] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [229] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [241] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [253] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [265] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [277] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [289] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [301] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [313] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [325] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [337] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [349] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [361] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [373] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [385] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [397] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [409] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [421] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [433] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [445] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [457] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [469] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [481] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [493] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [505] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [517] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [529] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [541] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [553] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [565] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [577] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [589] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
On utilise la fonction na.if pour remplacer les chaînes de caractère ‘NA’ en tant que NA pour que R puisse les traiter comme tel.
eurostoxx$'Carbon Intensity per Energy Produced'[eurostoxx$'Carbon Intensity per Energy Produced' == 'NA'] <- NA
On vérfie de nouveau avec la fonction is.na si l’oppération a fonctionné et cette fois-ci on obtient bien la boolean TRUE lorsqu’on lance la ligne de code.
is.na(eurostoxx$'Carbon Intensity per Energy Produced')
## [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [13] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [25] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [37] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [49] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE FALSE TRUE
## [61] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [73] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [85] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [97] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [109] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [121] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [133] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [145] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [157] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [169] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [181] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [193] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [205] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [217] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [229] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [241] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [253] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [265] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [277] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [289] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [301] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [313] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [325] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [337] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [349] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [361] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [373] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [385] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [397] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [409] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [421] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [433] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [445] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [457] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [469] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [481] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [493] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [505] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [517] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [529] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [541] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [553] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [565] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [577] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [589] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
On effectue la même opération sur tout le data frame pour ne pas avoir a rencontré le même problème de nouveau en utilisant la fonction replace.
eurostoxx <- replace(eurostoxx, eurostoxx=='NA', NA)
On va tout d’abord contruire un nouveau dataframe à partir des variables dont on a besoin pour faire notre analyse qui ont été évoquées dans l’énoncé.
names(eurostoxx) <- gsub("\n", " ", names(eurostoxx))
# Now subset with the modified column names
new_eurostoxx <- eurostoxx[, c("COUNTRY OF DOMICIL",
"Environment Pillar Score",
"EMPLOYEES",
"OPERATING PROFIT MARGIN",
"NET SALES OR REVENUES",
"Market Cap\r (Σ=Avg)",
"RETURN ON INVESTED CAPITAL",
"CSR Sustainability Committee",
"Value - Board Structure/Independent Board Members")]
Tout d’abord, on va voir les différentes classes dans notre base de données. On constate que les variables auxquelles on va s’intéresser pour notre études sont de différents types:
-Environment Pillar Score (EPS): charactère
COUNTRY OF DOMICIL: chaine de caractères
-EMPLOYEES (EMP): chaine de caractères
-OPERATING PROFIT MARGIN (MARGIN): chaine de caractères -> à modifier
-NET SALES OR REVENUES (SALES): caractère -> à modifier
-Market Cap (MCAP): numérique
-RETURN ON INVESTED CAPITAL (RCAP): charactère -> à modifier
-CSR Sustainability Committee (CSR)-> boolean
-Value: Board Structure/Independent Board Members (Board) –> caractère
Pour cette étude, on va tenter d’expliquer la variable Environment Pillar Score (EPS) à travers toutes les variables explicatives
lapply(new_eurostoxx, class)
## $`COUNTRY OF DOMICIL`
## [1] "character"
##
## $`Environment Pillar Score`
## [1] "character"
##
## $EMPLOYEES
## [1] "character"
##
## $`OPERATING PROFIT MARGIN`
## [1] "character"
##
## $`NET SALES OR REVENUES`
## [1] "character"
##
## $`Market Cap\r (Σ=Avg)`
## [1] "numeric"
##
## $`RETURN ON INVESTED CAPITAL`
## [1] "character"
##
## $`CSR Sustainability Committee`
## [1] "character"
##
## $`Value - Board Structure/Independent Board Members`
## [1] "character"
Avant de procéder à une analyse plus détaillée sur nos variables, on doit d’abord convertir les variables charactères en tant que variables numérique afin de pouvoir les visualiser et effectuer les analyses nécessaires dessus.
variables <- c("Environment Pillar Score", "EMPLOYEES", "OPERATING PROFIT MARGIN", "NET SALES OR REVENUES","RETURN ON INVESTED CAPITAL","Value - Board Structure/Independent Board Members")
new_eurostoxx[variables] <- lapply(new_eurostoxx[variables], as.numeric)
lapply(new_eurostoxx, class)
## $`COUNTRY OF DOMICIL`
## [1] "character"
##
## $`Environment Pillar Score`
## [1] "numeric"
##
## $EMPLOYEES
## [1] "numeric"
##
## $`OPERATING PROFIT MARGIN`
## [1] "numeric"
##
## $`NET SALES OR REVENUES`
## [1] "numeric"
##
## $`Market Cap\r (Σ=Avg)`
## [1] "numeric"
##
## $`RETURN ON INVESTED CAPITAL`
## [1] "numeric"
##
## $`CSR Sustainability Committee`
## [1] "character"
##
## $`Value - Board Structure/Independent Board Members`
## [1] "numeric"
Une autre transformation qui doit également être effectuée est sur notre variable catégorique ’CSR Sustainability Committee” qui porte pour valeur Y et N correspondant au fait si oui ou non une entreprise possède une comité CSR dans sa structure. Pour pouvoir traiter cette variable, on doit la transfomer en facteur.
#On vérifie si la colonne CSR sustainability est en facteur
is.factor(new_eurostoxx$'CSR Sustainability Committee')
## [1] FALSE
#On tranforme le type de la colonne
new_eurostoxx$'CSR Sustainability Committee' <- factor(
new_eurostoxx$'CSR Sustainability Committee',
levels = c("Y", "N"),
label= c("Oui", "Non"))
#On vérifie si la colonne prend désormais le type facteur
is.factor(new_eurostoxx$`CSR Sustainability Committee`)
## [1] TRUE
On fait la même chose sur la variable COUNTRY OF DOMICIL qui est une variable catégorique qui correspond au pays d’origine de chaque entreprise.
unique(new_eurostoxx$`COUNTRY OF DOMICIL`)
## [1] "BD" "BG" "BM" "DK" "ES" "FN" "FR" "IR" "IT" "LX" "MA" NA "NL" "NW" "OE"
## [16] "PT" "SD" "SW" "UK" "FA" "IM" "PO"
is.factor(new_eurostoxx$`COUNTRY OF DOMICIL`)
## [1] FALSE
new_eurostoxx$`COUNTRY OF DOMICIL` <- factor(
new_eurostoxx$`COUNTRY OF DOMICIL`,
levels = c("BD", "BG", "BM", "DK", "ES", "FN", "FR", "IR",
"IT", "LX", "MA", "NL", "NW", "OE", "PT",
"SD", "SW", "UK", "FA", "IM", "PO"),
labels = c("Allemagne", "Bulgarie", "Bermudes", "Danemark",
"Espagne", "Finlande", "France", "Irlande",
"Italie", "Luxembourg", "Malte",
"Pays-Bas", "Norvège", "Autriche", "Portugal",
"Suède", "Suisse", "Royaume-Uni", "Îles Féroé",
"Île de Man", "Pologne")
)
is.factor(new_eurostoxx$`COUNTRY OF DOMICIL`)
## [1] TRUE
#Afficher tous les levels
levels(new_eurostoxx$`COUNTRY OF DOMICIL`)
## [1] "Allemagne" "Bulgarie" "Bermudes" "Danemark" "Espagne"
## [6] "Finlande" "France" "Irlande" "Italie" "Luxembourg"
## [11] "Malte" "Pays-Bas" "Norvège" "Autriche" "Portugal"
## [16] "Suède" "Suisse" "Royaume-Uni" "Îles Féroé" "Île de Man"
## [21] "Pologne"
Puisque le nom des pays est donné par code, on fait une recherche sur ce que chaque code de pays signifie et on lui donne sa valeur réelle en tant que label en utilisant la commande factor().
Lorsqu’on a des données manquantes, il peut être tentant de simplement les ignorer et de travailler et contruire notre modèle avec des données manquantes. Sachant que chaque obervation nous permet de gagner en précision, construire un modèle avec des données manquantes peut nous faire perdre en précision. Pour savoir que faire avec nos données manquantes, il est important de d’en connaître la raison. C’est pour cela que dans cette partie, on va essayer d’analyser la structure de nos données manquantes pour savoir de quelle façon on peut y remédier.
#On renomme la colonne return on invested capital pour avoir plus d'espace
names(new_eurostoxx)[names(new_eurostoxx) == "RETURN ON INVESTED CAPITAL"] <- "ROIC"
names(new_eurostoxx)[names(new_eurostoxx) == "Market Cap\r (Σ=Avg)"] <- "Market Cap"
#On utilise la fonction pander ici car elle nous permet d'avoir un summary plus compréhensible et simple à lire.
pander(summary(new_eurostoxx))
| COUNTRY OF DOMICIL | Environment Pillar Score | EMPLOYEES |
|---|---|---|
| Royaume-Uni:131 | Min. : 0.00 | Min. : 0 |
| France : 69 | 1st Qu.:49.15 | 1st Qu.: 3851 |
| Allemagne : 65 | Median :69.01 | Median : 14522 |
| Suède : 61 | Mean :63.95 | Mean : 40720 |
| Suisse : 53 | 3rd Qu.:82.92 | 3rd Qu.: 43495 |
| (Other) :195 | Max. :98.16 | Max. :671205 |
| NA’s : 26 | NA’s :46 | NA’s :28 |
| OPERATING PROFIT MARGIN | NET SALES OR REVENUES | Market Cap |
|---|---|---|
| Min. :-275.78 | Min. : 52061 | Min. :1.480e+09 |
| 1st Qu.: 7.28 | 1st Qu.: 2385684 | 1st Qu.:5.548e+09 |
| Median : 12.86 | Median : 7159000 | Median :1.386e+10 |
| Mean : 20.04 | Mean : 23724980 | Mean :4.050e+10 |
| 3rd Qu.: 23.02 | 3rd Qu.: 23969000 | 3rd Qu.:3.639e+10 |
| Max. : 731.44 | Max. :554184257 | Max. :1.322e+12 |
| NA’s :28 | NA’s :27 | NA |
| ROIC | CSR Sustainability Committee | Value - Board Structure/Independent Board Members |
|---|---|---|
| Min. :-50.960 | Oui :447 | Min. : 0.00 |
| 1st Qu.: 4.610 | Non :107 | 1st Qu.: 50.00 |
| Median : 8.175 | NA’s: 46 | Median : 65.00 |
| Mean : 10.837 | NA | Mean : 64.15 |
| 3rd Qu.: 13.688 | NA | 3rd Qu.: 80.00 |
| Max. :437.740 | NA | Max. :100.00 |
| NA’s :30 | NA | NA’s :46 |
Dans notre jeu de données on a identifié dans la première partie de notre analyse qu’on avait beaucoup de données manquantes. Etant de données que dans notre jeu de données ne contient pas un grand nombre d’observations, on essaye d’analyser ces valeurs manquantes pour voir si il y a une structure particulière qui affecte les valeurs manquantes et on essaye de les remplacer afin de ne pas avoir un grande perte d’information pour estimer notre modèle de façon plus précise.
#les packages nécessaire pour faire l'analyse des valeurs manquantes
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ forcats 1.0.0 ✔ stringr 1.5.1
## ✔ lubridate 1.9.3 ✔ tibble 3.2.1
## ✔ purrr 1.0.2 ✔ tidyr 1.3.1
## ✔ readr 2.1.5
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(naniar)
library(gtExtras)
## Le chargement a nécessité le package : gt
library(mice)
##
## Attachement du package : 'mice'
##
## L'objet suivant est masqué depuis 'package:stats':
##
## filter
##
## Les objets suivants sont masqués depuis 'package:base':
##
## cbind, rbind
Ce graphique nous permet de visualiser les valeurs manquantes et on peut constater visuellement que sur notre jeu de données, on a des valeurs manquantes pour toutes nos variables hormis la variable ‘Market Cap’. On constate également que pour certaines valeurs il semble y avoir exactement le même nombre de valeurs manquantes, ce qui nous pousse à faire une analyse plus détaillée.
gg_miss_var(new_eurostoxx)
Ce graphique nous permet de voir les valeurs qui sont manquantes simultanément. On remarque en effet que sur notre jeu de données, on a plusieurs variables qui sont manquantes sur les mêmes observations. En général lorsqu’on fait face à des données manquantes on a plusieurs choix sur la manière dont elles peuvent être traiter. Les choix les plus communs sont:
La supression des valeurs manquantes
Le remplacement par une stastique comme la médiane ou la moyenne
L’estimation à travers un modèle machine learning comme KNN (k-nearest neighbor) qui consiste à calculer une moyenne de l’observation manquante avec ses voisins les plus proche
Dans notre cas, on a des données qui sont manquantes sur les mêmes observations simultanément et donc les remplacer par une valeur ‘artificielle’ pourrait nuire à la précision du modèle qu’on cherche à construire et à estimer. Pour cela, on fait le choix de supprimer les observations là ou il y ‘a des observations manquantes sur plus de 3 colonnes, et on remplacera par la médiane une observation qui est uniquement manquante sur la colonne ’operating profit margin’.
gg_miss_upset(new_eurostoxx)
Etant donné que la variable qu’on cherche à expliquer est le score environnemental, on remarque que sur plusieurs observations, on a des valeurs manquantes sur cette colonne qui sont aussi manquantes sur d’autres colonnes avec lesquelles on cherche à expliquer la variation dans le score environnemental. Pour y remédier, on supprime ces observations la car les remplacer par la médiane ou la moyenne sur plusieurs colonnes et donc les remplacer par des valeurs artificielles pourrait induire à un biais dans le modèle qu’on cherche à construire plus tard.
#On reconstruit donc notre data frame sans inclure les observations sur lesquelles on a des valeurs manquantes sur 5 colonnes au même temps
new_eurostoxx <- new_eurostoxx[!(
is.na(new_eurostoxx$`OPERATING PROFIT MARGIN`) &
is.na(new_eurostoxx$ROIC) &
is.na(new_eurostoxx$`Environment Pillar Score`) &
is.na(new_eurostoxx$`CSR Sustainability Committee`) &
is.na(new_eurostoxx$`Value - Board Structure/Independent Board Members`)
), ]
Ici on reconstruit notre data frame en excluant les observations sur lesquelles on a des valeurs manquantes sur plus de 4 colonnes au même temps pour les mêmes observations.
new_eurostoxx <- new_eurostoxx[!(
is.na(new_eurostoxx$ROIC) &
is.na(new_eurostoxx$`Environment Pillar Score`) &
is.na(new_eurostoxx$`CSR Sustainability Committee`) &
is.na(new_eurostoxx$`Value - Board Structure/Independent Board Members`)
), ]
Ici on reconstruit notre data frame en excluant les observations sur lesquelles on a des valeurs manquantes sur plus de 3 colonnes au même temps pour les mêmes observations.
new_eurostoxx <- new_eurostoxx[!(
is.na(new_eurostoxx$`Environment Pillar Score`) &
is.na(new_eurostoxx$`CSR Sustainability Committee`) &
is.na(new_eurostoxx$`Value - Board Structure/Independent Board Members`)
), ]
Grâce aux transformation qu’on a faites, il ne nous reste plus que des valeurs manquantes sur la colonne ‘Operating profit’. Etant donné qu’il ne s’agit que d’une seule valeur, on va la remplacer par sa médiane de sorte à ne plus avoir de valeurs manquantes dans notre jeu de données.
En utilisant la commande structure pour voir notre jeu de données, on voit bien qu’après les opérations qu’on a faite qu’il ne nous reste plus qu’une seule valeur manquante sur la colonne ‘Operating Profit’.
pander(summary (new_eurostoxx))
| COUNTRY OF DOMICIL | Environment Pillar Score | EMPLOYEES |
|---|---|---|
| Royaume-Uni:125 | Min. : 0.00 | Min. : 0 |
| France : 69 | 1st Qu.:49.15 | 1st Qu.: 4267 |
| Allemagne : 63 | Median :69.01 | Median : 14682 |
| Suède : 57 | Mean :63.95 | Mean : 41524 |
| Suisse : 53 | 3rd Qu.:82.92 | 3rd Qu.: 45898 |
| Pays-Bas : 28 | Max. :98.16 | Max. :671205 |
| (Other) :159 | NA | NA |
| OPERATING PROFIT MARGIN | NET SALES OR REVENUES | Market Cap |
|---|---|---|
| Min. :-275.78 | Min. : 69783 | Min. :1.480e+09 |
| 1st Qu.: 7.47 | 1st Qu.: 2540608 | 1st Qu.:5.555e+09 |
| Median : 12.93 | Median : 7342750 | Median :1.366e+10 |
| Mean : 20.67 | Mean : 23830453 | Mean :4.131e+10 |
| 3rd Qu.: 23.05 | 3rd Qu.: 24053000 | 3rd Qu.:3.673e+10 |
| Max. : 731.44 | Max. :554184257 | Max. :1.322e+12 |
| NA’s :1 | NA | NA |
| ROIC | CSR Sustainability Committee | Value - Board Structure/Independent Board Members |
|---|---|---|
| Min. :-38.140 | Oui:447 | Min. : 0.00 |
| 1st Qu.: 4.622 | Non:107 | 1st Qu.: 50.00 |
| Median : 8.230 | NA | Median : 65.00 |
| Mean : 11.013 | NA | Mean : 64.15 |
| 3rd Qu.: 13.750 | NA | 3rd Qu.: 80.00 |
| Max. :437.740 | NA | Max. :100.00 |
| NA | NA | NA |
On remplace la valeur manquante sur la colonne operating profit margin par la médiane et on voit bien qu’après traitement de notre jeu de données pour les valeurs manquantes, il ne nous reste plus de valeurs ‘NA’ dans nos colonnes. L’opération a donc bien fonctionné et le nombre d’observations dans notre jeu de données passe de 600 à 554, ce qui nous reste tout de même très suffisant pour estimer un modèle non biaisé. Dans le cas ou on aurait eu un bien plus grand nombre de NA, on aurait considérer d’autres approches de remplacement robustes en utilisant des méthodes de remplacement par modèle de machine learning pour tenter de préserver au maximum le nombre d’observations. Etant donné que 554 observations sont très suffisantes pour constuire un modèle de regression, on a donc fait le choix de supprimer des observations pour les lignes qui posaient problème et de remplacer par la médiane.
mediane <- median (new_eurostoxx$`OPERATING PROFIT MARGIN`, na.rm = TRUE)
new_eurostoxx$`OPERATING PROFIT MARGIN`[is.na(new_eurostoxx$`OPERATING PROFIT MARGIN`)] <- mediane
pander(summary(new_eurostoxx))
| COUNTRY OF DOMICIL | Environment Pillar Score | EMPLOYEES |
|---|---|---|
| Royaume-Uni:125 | Min. : 0.00 | Min. : 0 |
| France : 69 | 1st Qu.:49.15 | 1st Qu.: 4267 |
| Allemagne : 63 | Median :69.01 | Median : 14682 |
| Suède : 57 | Mean :63.95 | Mean : 41524 |
| Suisse : 53 | 3rd Qu.:82.92 | 3rd Qu.: 45898 |
| Pays-Bas : 28 | Max. :98.16 | Max. :671205 |
| (Other) :159 | NA | NA |
| OPERATING PROFIT MARGIN | NET SALES OR REVENUES | Market Cap |
|---|---|---|
| Min. :-275.780 | Min. : 69783 | Min. :1.480e+09 |
| 1st Qu.: 7.478 | 1st Qu.: 2540608 | 1st Qu.:5.555e+09 |
| Median : 12.930 | Median : 7342750 | Median :1.366e+10 |
| Mean : 20.658 | Mean : 23830453 | Mean :4.131e+10 |
| 3rd Qu.: 23.047 | 3rd Qu.: 24053000 | 3rd Qu.:3.673e+10 |
| Max. : 731.440 | Max. :554184257 | Max. :1.322e+12 |
| NA | NA | NA |
| ROIC | CSR Sustainability Committee | Value - Board Structure/Independent Board Members |
|---|---|---|
| Min. :-38.140 | Oui:447 | Min. : 0.00 |
| 1st Qu.: 4.622 | Non:107 | 1st Qu.: 50.00 |
| Median : 8.230 | NA | Median : 65.00 |
| Mean : 11.013 | NA | Mean : 64.15 |
| 3rd Qu.: 13.750 | NA | 3rd Qu.: 80.00 |
| Max. :437.740 | NA | Max. :100.00 |
| NA | NA | NA |
Maintenant que nous n’avons plus de valeurs manquantes sur notre jeu de données, on passe à la détection et au traitement des valeurs aberrantes qui peuvent exister sur notre jeu de données.
Les valeurs aberrantes sont des valeurs qui diffèrent significativement des autres observations sur notre jeu de données. Elles peuvent être soit beaucoup plus grandes ou beaucoup plus petites que les autres observations avec lequelles on travaille. Elle sont particulièrement problèmatiques dans notre cas, car le modèle qu’on cherche à construire est une régression liénaire. Dans la régression linéaire on utilise la méthode des moindres carrés pour estimer nos coefficients. Les valeurs aberrantes peuvent donc avoir une influence disprportionnée sur cette somme de carrés en tirant la ligne de régression vers elles, ce qui fausserait les coefficients estimés et pourrait nous induire en erreur en concluant qu’un coefficient est significatif lorsqu’il ne l’ai pas, ou qu’il ai non significatif lorsqu’il l’est. Nous devons donc détecter l’existence de ces valeurs aberrantes et trouver un moyen de les traiter pour s’assurer d’estimer les relations entre nos variables sans biais.
La formule qu’on utilise en général pour détecter la présence de valeurs aberrantes est la suivante:
[𝑄1−1.5×𝐼𝑄𝑅,𝑄3+1.5×𝐼𝑄𝑅] avec Q1 étant le premier quartile et Q3 étant le troisième quartile.
On peut également détecter la présence de valeurs aberrantes grâce au graphique en boite (le box plot), ou les valeurs aberrantes s’affichent généralement distancées du premier et deuxième quartile. On va voir que dans certaines cas extrêmes, le box plot s’affiche comme étant totalement distordu et ça nous permet de détecter la présence de valeurs aberrantes extrêmes.
Pour notre analyse, on va analyser chacune de nos variables une par une en commençant par la variable endogène du score environnemental.
Ici, pour la valeur qu’on cherche à estimer du score environnemental, on remarque qu’il n’y a pas de valeurs aberrantes et on affiche ces principales stastiques grâce à la commande summary.
boxplot(new_eurostoxx$`Environment Pillar Score`)
summary(new_eurostoxx$`Environment Pillar Score`)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.00 49.15 69.01 63.95 82.92 98.16
On va effectuer de même avec toutes les autres variables qu’on va inclure dans notre modèle.
Pour la variable qui représente le nombre d’employés, on remarque qu’il y a une très grande présence de valeurs aberrantes. On a beaucoup de valeurs qui sont réparties vers le haut du graphique et le diagramme est complètement déformé.
boxplot(new_eurostoxx$`EMPLOYEES`)
summary(new_eurostoxx$`EMPLOYEES`)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0 4267 14682 41524 45898 671205
Maintenant que nous avons identifié graphiquement la présence de valeurs aberrantes sur la colonne qui correspond au nombre d’employés, on identifie ces valeurs aberrantes et on les mets dans la variable ‘Valeurs_aberrantes_employees’. On calcule également le pourcentage de valeurs aberrantes dans notre colonne. Sur la colonne employés, on a plus de 9% des observations qui sont aberrantes, ce qui est énorme.
# Calculer les quartiles et la différence entre les quartiles
Q1 <- quantile(new_eurostoxx$EMPLOYEES, 0.25, na.rm = TRUE)
Q3 <- quantile(new_eurostoxx$EMPLOYEES, 0.75, na.rm = TRUE)
IQR <- Q3 - Q1
# Définir les limites inférieures et supérieures
limite_inférieure <- Q1 - 1.5 * IQR
limite_supérieure <- Q3 + 1.5 * IQR
# Identifier les valeurs aberrantes
Valeurs_aberrantes_employees <- new_eurostoxx$EMPLOYEES[new_eurostoxx$EMPLOYEES < limite_inférieure | new_eurostoxx$EMPLOYEES > limite_supérieure]
print(Valeurs_aberrantes_employees)
## [1] 133778 241458 210533 385000 162372 138353 147268 117628 175000 471056
## [11] 126973 192376 174386 117347 321383 223370 133197 147715 470237 127200
## [21] 151297 178780 170643 219314 222397 138240 198816 179565 135619 171000
## [31] 114700 191000 380000 115428 126376 302055 144400 291000 235351 138097
## [41] 116400 153000 596452 294134 120659 671205 298655 190431 130621 331065
## [51] 151242 163309 118523 134931 321490
print(length(Valeurs_aberrantes_employees)/length(new_eurostoxx$EMPLOYEES))
## [1] 0.09927798
#Près de 10% des valeurs dans la colonnes employees sont des valeurs aberrantes
On fait la même chose avec la variable Operating Profit Margin et on a également un box plot qui s’affiche totalement déformé ce qui indique qui forte présence de valeurs aberrantes.
boxplot(new_eurostoxx$`OPERATING PROFIT MARGIN`)
summary(new_eurostoxx$`OPERATING PROFIT MARGIN`)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## -275.780 7.478 12.930 20.658 23.047 731.440
On fait la même chose qu’on a fait pour employees en créant un vecteur pour les valeurs aberrantes de ‘Operating profit margin’.
# Calculer les quartiles et la différence entre les quartiles
Q1 <- quantile(new_eurostoxx$`OPERATING PROFIT MARGIN`, 0.25, na.rm = TRUE)
Q3 <- quantile(new_eurostoxx$`OPERATING PROFIT MARGIN`, 0.75, na.rm = TRUE)
IQR <- Q3 - Q1
# Définir les limites inférieures et supérieures
limite_inférieure <- Q1 - 1.5 * IQR
limite_supérieure <- Q3 + 1.5 * IQR
# Identifier les valeurs aberrantes
Valeurs_aberrantes_OPM <- new_eurostoxx$`OPERATING PROFIT MARGIN`[new_eurostoxx$`OPERATING PROFIT MARGIN` < limite_inférieure| new_eurostoxx$`OPERATING PROFIT MARGIN` > limite_supérieure]
print(Valeurs_aberrantes_OPM)
## [1] -20.79 48.14 53.57 57.14 60.69 57.22 48.31 731.44 54.01
## [10] 49.87 79.66 55.71 53.09 62.66 102.49 68.35 53.47 -53.60
## [19] 95.93 70.84 631.69 75.91 75.02 52.42 49.16 51.65 57.14
## [28] 49.18 -30.66 -275.78 49.03 164.31 57.79 60.06 726.99 54.59
## [37] 66.21 63.95 73.87 53.01 51.98 58.84
print(length(Valeurs_aberrantes_OPM)/length(new_eurostoxx$`OPERATING PROFIT MARGIN`))
## [1] 0.07581227
#On constate que 7% des valeurs sur la colonnes operating profit margin sont des valeurs aberrantes
On constate également que pour les colonnes net sales or revenues on a beaucoup de valeurs qui semblent extrêmes.
boxplot(new_eurostoxx$`NET SALES OR REVENUES`)
summary(new_eurostoxx$`NET SALES OR REVENUES`)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 69783 2540608 7342750 23830453 24053000 554184257
Plus de 11% des observations sur la colonne operating profit margin sont des valeurs aberrantes.
# Calculer les quartiles et la différence entre les quartiles
Q1 <- quantile(new_eurostoxx$`NET SALES OR REVENUES`, 0.25, na.rm = TRUE)
Q3 <- quantile(new_eurostoxx$`NET SALES OR REVENUES`, 0.75, na.rm = TRUE)
IQR <- Q3 - Q1
# Définir les limites inférieures et supérieures
limite_inférieure <- Q1 - 1.5 * IQR
limite_supérieure <- Q3 + 1.5 * IQR
# Identifier les valeurs aberrantes
Valeurs_aberrantes_NetSalesRevenues <- new_eurostoxx$`NET SALES OR REVENUES`[new_eurostoxx$`NET SALES OR REVENUES` < limite_inférieure| new_eurostoxx$`NET SALES OR REVENUES` > limite_supérieure]
print(Valeurs_aberrantes_NetSalesRevenues)
## [1] 104210000 80531000 86849000 113677000 59316000 65804000 65902000
## [8] 152102000 94701000 70398000 122021000 78555000 78178000 78625000
## [15] 74142000 157681168 132537000 64983000 60058000 77366000 69881000
## [22] 63175710 66260000 80666000 149766000 113666000 554184257 113266379
## [29] 232755000 227216000 172846000 74248000 110899000 61280000 85965000
## [36] 94029000 68270000 128975000 71593380 92568000 78320064 73279993
## [43] 63988000 252632000 172745000 90684643 259751366 134405361 92948000
## [50] 70478000 83141000 111203000 63283000 431980000 76485000 118981000
## [57] 103756000 103238000 86013000 61466000 168167326 63911000 217642423
## [64] 308544208
print(length(Valeurs_aberrantes_NetSalesRevenues)/length(new_eurostoxx$`NET SALES OR REVENUES`))
## [1] 0.1155235
#On constate que 11% des valeurs sur la colonnes operating profit margin sont des valeurs aberrantes
On constate également que pour la colonne Market Cap elle aussi semble avoir plusieurs valeurs extrêmes.
boxplot(new_eurostoxx$`Market Cap`)
summary(new_eurostoxx$`Market Cap`)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.480e+09 5.555e+09 1.366e+10 4.131e+10 3.673e+10 1.322e+12
Plus de 11% des observations sur la colonne market cap sont des valeurs extrêmes.
# Calculer les quartiles et la différence entre les quartiles
Q1 <- quantile(new_eurostoxx$`Market Cap`, 0.25, na.rm = TRUE)
Q3 <- quantile(new_eurostoxx$`Market Cap`, 0.75, na.rm = TRUE)
IQR <- Q3 - Q1
# Définir les limites inférieures et supérieures
limite_inférieure <- Q1 - 1.5 * IQR
limite_supérieure <- Q3 + 1.5 * IQR
# Identifier les valeurs aberrantes
Valeurs_aberrantes_MarketCap <- new_eurostoxx$`Market Cap`[new_eurostoxx$`Market Cap`< limite_inférieure| new_eurostoxx$`Market Cap` > limite_supérieure]
print(Valeurs_aberrantes_MarketCap)
## [1] 9.136189e+10 1.163249e+11 9.866800e+10 9.261927e+10 1.327745e+11
## [6] 9.158319e+10 2.504566e+11 2.957757e+11 9.846966e+10 1.707033e+11
## [11] 1.322439e+12 1.328977e+11 1.777388e+11 1.258699e+11 2.925140e+11
## [16] 2.128245e+11 1.207912e+11 1.402453e+11 1.743729e+11 1.068528e+12
## [21] 1.179889e+11 1.279923e+11 9.881069e+10 1.872379e+11 2.579534e+11
## [26] 2.359215e+11 1.058854e+11 1.696848e+11 1.655006e+11 1.074538e+11
## [31] 2.439182e+11 1.921001e+11 1.865174e+11 1.362679e+11 8.417718e+10
## [36] 2.102366e+11 3.445374e+11 8.769737e+10 1.008489e+11 8.924409e+10
## [41] 1.593779e+11 9.579771e+10 8.603840e+10 1.515597e+11 3.806447e+11
## [46] 1.019372e+11 1.336375e+11 1.126122e+11 9.915408e+10 8.356864e+10
## [51] 2.836362e+11 5.535871e+11 2.141963e+11 9.100866e+10 9.804963e+10
## [56] 3.317611e+11 2.688794e+11 5.099112e+11 2.331090e+11 1.217811e+11
## [61] 1.590819e+11 2.110723e+11 3.030842e+11 2.614380e+11 8.839471e+10
## [66] 2.029851e+11
print(length(Valeurs_aberrantes_MarketCap)/length(new_eurostoxx$`Market Cap`))
## [1] 0.1191336
#On constate que 12% des valeurs sur la colonne Market Cap sont des valeurs aberrantes
Contrairement aux autres colonnes, la colonne value-board structure/independent board members ne semble pas avoir beaucoup de valeurs aberrantes. Sur le graphique on détecte uniquement la présence de potentiellement 2 valeurs qui sont aberrantes.
boxplot(new_eurostoxx$`Value - Board Structure/Independent Board Members`)
summary(new_eurostoxx$`Value - Board Structure/Independent Board Members`)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.00 50.00 65.00 64.15 80.00 100.00
# Calculer les quartiles et la différence entre les quartiles
Q1 <- quantile(new_eurostoxx$`Value - Board Structure/Independent Board Members`, 0.25, na.rm = TRUE)
Q3 <- quantile(new_eurostoxx$`Value - Board Structure/Independent Board Members`, 0.75, na.rm = TRUE)
IQR <- Q3 - Q1
# Définir les limites inférieures et supérieures
limite_inférieure <- Q1 - 1.5 * IQR
limite_supérieure <- Q3 + 1.5 * IQR
# Identifier les valeurs aberrantes
Valeurs_aberrantes_value <- new_eurostoxx$`Value - Board Structure/Independent Board Members`[new_eurostoxx$`Value - Board Structure/Independent Board Members`< limite_inférieure| new_eurostoxx$`Value - Board Structure/Independent Board Members` > limite_supérieure]
print(Valeurs_aberrantes_value)
## [1] 4.55 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
## [16] 0.00 0.00 0.00
print(length(Valeurs_aberrantes_value)/length(new_eurostoxx$`Value - Board Structure/Independent Board Members`))
## [1] 0.03249097
#On constate que 3% des valeurs sur la colonne board structure sont aberrantes
Maintenant qu’on a fait une analyse des valeurs aberrantes, on peut en tirer que sur notre jeu de données, il y a une présence de plusieurs valeurs extrêmes qui peuvent par la suite impacter nos coefficients, voire même les biaiser. Pour cette raison, et afin de garantir les résulats les moins biaisés possible pour notre régression, on va traîter nos valeurs extrêmes. Pour cela, de nombreux choix s’offent à nous, et on va tenter de rapidement les expliquer et puis de justifier l’utilisation d’une de ces méthodes pour traîter nos valeurs aberrantes:
Supprimer les valeurs aberrantes: Une option qui s’offre à nous et celle de supprimer les valeurs aberrantes. Cela peut être très tentant car de la sorte on se retrouve avec uniquement des valeurs ‘normales’. Cependant, et comme on l’a constaté, pour certaines colonnes on a plus de 12% de notre jeu de données qui représente des valeurs aberrantes, et cela voudra dire supprimer plus de 12% de nos données. A priori, la raison pour laquelle les valeurs semblent être aussi élevées ou aussi peu élevées pour certaines colonne peut relever du fait que notre jeu de données inclut de très grandes entreprises et d’autres qui sont moins ‘grandes’, ce qui peut expliquer de grandes différences par rapport au nombre d’employés, de profit généré, de ventes réalisées, etc. Pour nous, et dans notre cas, on juge que supprimer des valeurs pourrait conduire à un plus gros biais dans notre regression que de simplement les laisser.
Remplacer par la médiane: Remplacer les valeurs aberrantes par la médiane est également une méthode très utilisée pour traîter les valeurs aberrantes. Elle peut être valable sous plusieurs scénarios et permet de ne pas perdre d’informations. Cependant, cette méthode a beaucoup plusieurs de sens lorsque les valeurs aberrantes sont le résultats de fautes de frappes ou de mesure et donc remplace une information qui était ‘fausse’ par une tendence centrale de la distribution de la colonne concernée. Cependant, dans notre cas, et suite à notre analyse, il ne semblerait pas que les valeurs aberrantes soient le résulat d’informations incorrectes, mais ça semblerait plutôt être expliqué par la présence de géantes, grandes, moyennes, et plus petites entreprises. Pour cela, remplacer par la médiane ici nous ferait perdre des informations sur ces observations qu’on a jugé être ‘aberrantes’.
Windsorisation: La windorisation est une méthode qui consiste à remplacer les valeurs aberrantes par des valeurs qui sont proches, comme un quantile, et permet donc de significativement réduire l’impact des valeurs aberrantes. Elle permet donc de ramener les valeurs extrêmes à un seuil plus raisonnable. Dans notre cas, elle est jugée comme étant moins agressive que la supression des données ou le remplacement par la médiane car elle permet de ne pas ignorer la contribution des valeurs extrêmes, qui dans notre cas, eux aussi ont également des informations qui peuvent être importantes à considérer pour notre modèle. A noter que cette méthode ne supprime pas totalement les valeurs aberrantes, mais les ramène à un seuil raisonnable.
On va appliquer une windsorisation sur toutes les colonnes ou on a identifié la présence de valeurs aberrantes dans notre jeu de données:
library(DescTools) #package qui inclut la fonctiton windsorisation
# Exclure "Environment Pillar Score" de la Winsorisation puisque celle-ci n'avait pas de valeurs aberrantes
eurostoxx_windsorize <- data.frame(lapply(names(new_eurostoxx), function(col_name) {
col <- new_eurostoxx[[col_name]] # Extraire la colonne
if (is.numeric(col) && col_name != "Environment Pillar Score") {
Winsorize(col, val = quantile(col, probs = c(0.1, 0.9), na.rm = TRUE))
} else {
col # Garder les colonnes non numériques ou spécifiquement exclues inchangées
}
}))
# Renommer les colonnes pour correspondre aux noms d'origine
colnames(eurostoxx_windsorize) <- colnames(new_eurostoxx)
# Afficher les données après Winsorisation
print(eurostoxx_windsorize)
## COUNTRY OF DOMICIL Environment Pillar Score EMPLOYEES
## 1 Allemagne 95.85 87597.0
## 2 Allemagne 90.57 108154.7
## 3 Allemagne 73.82 20654.0
## 4 Allemagne 67.45 3232.0
## 5 Allemagne 78.53 108154.7
## 6 Allemagne 67.63 14304.0
## 7 Allemagne 81.76 108154.7
## 8 Allemagne 83.01 55047.0
## 9 Allemagne 68.16 52450.0
## 10 Allemagne 91.63 57036.0
## 11 Allemagne 69.26 18490.0
## 12 Allemagne 85.05 6853.0
## 13 Allemagne 81.81 14332.0
## 14 Allemagne 79.46 19792.0
## 15 Allemagne 77.58 100330.0
## 16 Allemagne 74.74 108154.7
## 17 Allemagne 74.17 108154.7
## 18 Allemagne 78.97 108154.7
## 19 Allemagne 53.86 3083.0
## 20 Allemagne 95.51 108154.7
## 21 Allemagne 89.49 10660.0
## 22 Allemagne 38.11 4238.0
## 23 Allemagne 44.89 17492.0
## 24 Allemagne 89.39 59533.0
## 25 Allemagne 92.14 108154.7
## 26 Allemagne 86.63 103824.0
## 27 Allemagne 88.32 48512.0
## 28 Allemagne 64.81 78948.0
## 29 Allemagne 88.48 32423.0
## 30 Allemagne 47.11 34604.0
## 31 Allemagne 36.03 14868.0
## 32 Allemagne 42.25 7253.0
## 33 Allemagne 50.79 10264.0
## 34 Allemagne 81.62 71473.0
## 35 Allemagne 66.09 11743.0
## 36 Allemagne 75.50 13763.0
## 37 Bulgarie 88.36 24155.0
## 38 Bulgarie 92.07 37629.0
## 39 Bulgarie 75.07 7606.0
## 40 Bulgarie 67.06 12931.0
## 41 Bulgarie 44.36 2500.0
## 42 Bulgarie 52.67 108154.7
## 43 Bermudes 21.45 3100.0
## 44 Danemark 61.46 41248.0
## 45 Danemark 81.17 11691.0
## 46 Danemark 86.58 22006.0
## 47 Danemark 57.23 61216.0
## 48 Danemark 81.45 6526.0
## 49 Danemark 87.90 6125.0
## 50 Danemark 69.70 12074.0
## 51 Danemark 85.51 42703.0
## 52 Danemark 54.45 108154.7
## 53 Espagne 79.44 8878.0
## 54 Espagne 34.29 1610.0
## 55 Espagne 71.65 17789.0
## 56 Espagne 83.48 108154.7
## 57 Espagne 82.70 8753.0
## 58 Espagne 86.15 108154.7
## 59 Espagne 92.48 11847.0
## 60 Espagne 91.97 39699.0
## 61 Espagne 81.30 9952.0
## 62 Espagne 84.67 1320.0
## 63 Espagne 84.86 1213.1
## 64 Espagne 84.04 35736.0
## 65 Espagne 90.09 34306.0
## 66 Espagne 96.09 108154.7
## 67 Espagne 75.42 24016.0
## 68 Espagne 87.10 24634.0
## 69 Espagne 80.13 108154.7
## 70 Finlande 65.61 18598.0
## 71 Finlande 86.48 98322.0
## 72 Finlande 90.12 18795.0
## 73 Finlande 63.05 4730.0
## 74 Finlande 93.78 25141.0
## 75 Finlande 87.33 18742.0
## 76 Finlande 86.95 8191.0
## 77 Finlande 65.02 4884.0
## 78 Finlande 68.92 4413.0
## 79 Finlande 70.67 59825.0
## 80 Finlande 72.04 3265.0
## 81 Finlande 62.95 13598.0
## 82 France 75.17 83801.0
## 83 France 95.32 73037.0
## 84 France 76.63 46245.0
## 85 France 72.56 108154.7
## 86 France 97.25 1213.1
## 87 France 53.32 67200.0
## 88 France 89.78 108154.7
## 89 France 92.52 107776.0
## 90 France 76.74 87974.0
## 91 France 76.57 108154.7
## 92 France 60.47 108154.7
## 93 France 84.29 100409.0
## 94 France 52.68 99843.0
## 95 France 91.23 102449.0
## 96 France 81.91 19140.0
## 97 France 92.10 108154.7
## 98 France 43.61 22361.0
## 99 France 74.41 108154.7
## 100 France 78.98 108154.7
## 101 France 63.08 82605.0
## 102 France 95.49 38068.0
## 103 France 79.69 33293.0
## 104 France 89.76 1213.1
## 105 France 67.34 108154.7
## 106 France 83.99 108154.7
## 107 France 94.84 108154.7
## 108 France 76.82 108154.7
## 109 France 90.75 108154.7
## 110 France 97.94 1908.0
## 111 France 96.15 72213.0
## 112 France 96.44 108154.7
## 113 France 95.31 108154.7
## 114 France 97.15 108154.7
## 115 France 84.94 108154.7
## 116 France 69.39 65020.0
## 117 France 74.26 78395.0
## 118 France 90.03 1213.1
## 119 France 76.89 108154.7
## 120 France 96.97 36270.0
## 121 France 93.33 5807.0
## 122 France 84.03 39007.0
## 123 France 90.16 19783.0
## 124 France 85.89 26122.0
## 125 France 74.01 3028.0
## 126 France 61.67 26631.0
## 127 France 77.17 3539.0
## 128 France 80.43 11877.0
## 129 France 81.29 108154.7
## 130 France 79.16 11795.0
## 131 Irlande 32.56 16951.0
## 132 Irlande 74.54 86951.0
## 133 Irlande 37.02 12500.0
## 134 Irlande 90.06 14529.0
## 135 Irlande 73.08 46000.0
## 136 Irlande 49.46 10440.0
## 137 Italie 37.27 4805.0
## 138 Italie 88.94 89102.0
## 139 Italie 93.04 12186.0
## 140 Italie 82.46 8982.0
## 141 Italie 90.00 68253.0
## 142 Italie 69.96 32053.0
## 143 Italie 86.17 3025.0
## 144 Italie 70.39 4290.0
## 145 Italie 71.95 4323.0
## 146 Italie 96.08 49530.0
## 147 Italie 55.56 28714.0
## 148 Italie 51.05 4096.0
## 149 Italie 84.02 84245.0
## 150 Italie 53.33 4285.0
## 151 Luxembourg 78.56 108154.7
## 152 Malte 31.40 1666.0
## 153 Pays-Bas 61.01 18116.0
## 154 Pays-Bas 70.15 11248.0
## 155 Pays-Bas 68.66 85853.0
## 156 Pays-Bas 81.59 80495.0
## 157 Pays-Bas 86.95 23757.0
## 158 Pays-Bas 58.03 2337.0
## 159 Pays-Bas 61.24 38280.0
## 160 Pays-Bas 65.50 18361.0
## 161 Pays-Bas 59.52 26822.0
## 162 Pays-Bas 68.65 23219.0
## 163 Pays-Bas 61.46 14913.0
## 164 Pays-Bas 89.67 17977.0
## 165 Pays-Bas 56.12 108154.7
## 166 Pays-Bas 86.44 56196.0
## 167 Pays-Bas 91.47 32005.0
## 168 Pays-Bas 91.23 4622.0
## 169 Norvège 62.41 5006.0
## 170 Norvège 75.34 1759.0
## 171 Norvège 50.10 14866.0
## 172 Norvège 51.10 1213.1
## 173 Norvège 95.27 18348.0
## 174 Norvège 87.67 36310.0
## 175 Norvège 35.48 4530.0
## 176 Norvège 61.00 20000.0
## 177 Norvège 76.12 21412.0
## 178 Norvège 69.08 16033.0
## 179 Norvège 40.63 1593.0
## 180 Norvège 54.05 1742.0
## 181 Norvège 56.25 3674.0
## 182 Autriche 63.40 46873.0
## 183 Autriche 66.12 19845.0
## 184 Autriche 68.72 51907.0
## 185 Autriche 7.91 8609.0
## 186 Portugal 83.00 11660.0
## 187 Portugal 71.21 6386.0
## 188 Portugal 90.20 108154.7
## 189 Suède 93.96 108154.7
## 190 Suède 82.46 99417.0
## 191 Suède 57.50 33585.0
## 192 Suède 75.37 23935.0
## 193 Suède 92.09 15819.0
## 194 Suède 20.17 108154.7
## 195 Suède 69.15 3798.0
## 196 Suède 20.04 1213.1
## 197 Suède 83.01 15218.0
## 198 Suède 83.24 1213.1
## 199 Suède 59.63 20845.0
## 200 Suède 90.31 17497.0
## 201 Suède 79.02 4542.0
## 202 Suède 87.93 13083.0
## 203 Suède 48.13 2422.0
## 204 Suède 68.61 5061.0
## 205 Suède 62.13 1213.1
## 206 Suède 82.23 48992.0
## 207 Suède 87.06 12548.0
## 208 Suède 48.22 7257.0
## 209 Suède 56.42 45980.0
## 210 Suède 21.88 5873.0
## 211 Suède 54.83 2915.0
## 212 Suisse 64.44 13107.0
## 213 Suisse 75.68 92661.0
## 214 Suisse 87.38 19317.0
## 215 Suisse 70.43 12257.0
## 216 Suisse 83.36 14621.0
## 217 Suisse 72.39 14969.0
## 218 Suisse 93.53 54030.0
## 219 Suisse 84.07 103914.0
## 220 Suisse 32.80 1932.0
## 221 Suisse 43.80 34000.0
## 222 Suisse 70.22 72452.0
## 223 Suisse 96.58 108154.7
## 224 Suisse 75.10 14740.0
## 225 Suisse 78.22 15468.0
## 226 Suisse 93.86 11283.0
## 227 Suisse 37.00 1213.1
## 228 Suisse 62.73 66306.0
## 229 Suisse 52.96 6600.0
## 230 Suisse 93.29 11619.0
## 231 Suisse 97.80 108154.7
## 232 Suisse 62.04 33353.0
## 233 Suisse 61.51 15401.0
## 234 Suisse 80.70 28389.0
## 235 Suisse 56.06 35640.0
## 236 Suisse 2.39 1810.0
## 237 Suisse 51.57 5449.0
## 238 Suisse 84.10 25141.0
## 239 Royaume-Uni 70.83 64642.0
## 240 Royaume-Uni 70.42 5719.0
## 241 Royaume-Uni 49.82 6504.0
## 242 Royaume-Uni 93.80 1213.1
## 243 Royaume-Uni 9.96 2064.0
## 244 Royaume-Uni 42.19 1340.0
## 245 Royaume-Uni 88.95 28150.0
## 246 Royaume-Uni 78.20 5359.0
## 247 Royaume-Uni 62.93 87800.0
## 248 Royaume-Uni 81.56 1213.1
## 249 Royaume-Uni 96.12 1213.1
## 250 Royaume-Uni 54.50 6603.0
## 251 Royaume-Uni 39.70 6749.0
## 252 Royaume-Uni 85.30 84332.0
## 253 Royaume-Uni 44.35 11509.0
## 254 Royaume-Uni 77.54 32700.0
## 255 Royaume-Uni 88.81 108154.7
## 256 Royaume-Uni 74.06 8542.0
## 257 Royaume-Uni 91.67 108154.7
## 258 Royaume-Uni 79.45 22734.0
## 259 Royaume-Uni 72.22 5097.0
## 260 Royaume-Uni 61.34 1363.0
## 261 Royaume-Uni 36.02 18125.0
## 262 Royaume-Uni 43.33 2634.0
## 263 Royaume-Uni 63.41 12039.0
## 264 Royaume-Uni 79.44 27574.0
## 265 Royaume-Uni 87.88 63069.0
## 266 Royaume-Uni 76.19 6122.0
## 267 Royaume-Uni 46.85 17637.0
## 268 Royaume-Uni 81.94 99437.0
## 269 Royaume-Uni 78.96 14687.0
## 270 Royaume-Uni 91.69 70600.0
## 271 Royaume-Uni 74.26 106700.0
## 272 Royaume-Uni 83.50 78597.0
## 273 Royaume-Uni 93.53 80800.0
## 274 Royaume-Uni 69.45 45653.0
## 275 Royaume-Uni 60.33 10332.0
## 276 Royaume-Uni 69.07 28151.0
## 277 Royaume-Uni 81.94 77300.0
## 278 Royaume-Uni 47.37 108154.7
## 279 Royaume-Uni 60.13 29147.0
## 280 Royaume-Uni 16.71 18984.0
## 281 Royaume-Uni 71.53 42933.0
## 282 Royaume-Uni 83.96 4795.0
## 283 Royaume-Uni 69.92 4965.0
## 284 Royaume-Uni 86.00 108154.7
## 285 Royaume-Uni 88.47 25900.0
## 286 Royaume-Uni 51.40 6580.0
## 287 Royaume-Uni 80.87 35514.0
## 288 Royaume-Uni 58.17 2988.0
## 289 Royaume-Uni 15.46 1586.0
## 290 Royaume-Uni 32.97 14250.0
## 291 Royaume-Uni 82.33 63000.0
## 292 Royaume-Uni 84.41 1213.1
## 293 Royaume-Uni 88.15 42400.0
## 294 Royaume-Uni 81.82 33200.0
## 295 Royaume-Uni 85.48 5267.0
## 296 Royaume-Uni 31.60 15152.0
## 297 Royaume-Uni 83.85 1213.1
## 298 Royaume-Uni 9.34 17300.0
## 299 Royaume-Uni 66.01 62900.0
## 300 Royaume-Uni 36.34 12755.0
## 301 Royaume-Uni 43.57 9576.0
## 302 Royaume-Uni 10.50 8703.0
## 303 Royaume-Uni 56.59 108154.7
## 304 Royaume-Uni 53.27 22576.0
## 305 Royaume-Uni 69.44 11074.0
## 306 Royaume-Uni 75.59 98996.0
## 307 Royaume-Uni 60.66 3612.0
## 308 Royaume-Uni 21.40 1213.1
## 309 Royaume-Uni 27.02 10762.0
## 310 Royaume-Uni 33.53 1213.1
## 311 Royaume-Uni 94.78 1213.1
## 312 Royaume-Uni 58.63 1213.1
## 313 Royaume-Uni 65.57 106786.0
## 314 Royaume-Uni 92.40 63499.0
## 315 Allemagne 64.74 23780.0
## 316 Allemagne 40.81 11487.0
## 317 Allemagne 25.40 5627.0
## 318 Allemagne 68.31 6775.0
## 319 Allemagne 54.24 1213.1
## 320 Allemagne 47.46 2258.0
## 321 Allemagne 95.73 39662.0
## 322 Allemagne 36.35 1257.0
## 323 Allemagne 53.50 9016.0
## 324 Allemagne 54.44 108154.7
## 325 Allemagne 56.32 108154.7
## 326 Allemagne 46.14 4477.0
## 327 Allemagne 75.25 41418.0
## 328 Allemagne 93.36 108154.7
## 329 Allemagne 42.20 3030.0
## 330 Allemagne 44.76 1213.1
## 331 Allemagne 69.13 17201.0
## 332 Allemagne 22.10 24617.0
## 333 Allemagne 78.07 52000.0
## 334 Allemagne 76.23 28905.0
## 335 Allemagne 84.74 14633.0
## 336 Allemagne 35.76 2875.0
## 337 Allemagne 11.57 3704.0
## 338 Allemagne 0.00 1213.1
## 339 Allemagne 90.18 10345.0
## 340 Allemagne 37.80 9374.0
## 341 Allemagne 96.97 108154.7
## 342 Bulgarie 93.42 14128.0
## 343 Bulgarie 84.96 1213.1
## 344 Bulgarie 81.69 28339.0
## 345 Bulgarie 0.00 1213.1
## 346 Bulgarie 51.88 1213.1
## 347 Bulgarie 76.64 2630.0
## 348 Bulgarie 47.49 1213.1
## 349 Bulgarie 53.44 11089.0
## 350 Bulgarie 86.15 1213.1
## 351 Bulgarie 83.55 10741.0
## 352 Danemark 33.64 15837.0
## 353 Danemark 48.26 23736.0
## 354 Danemark 49.13 1213.1
## 355 Danemark 76.83 25542.0
## 356 Danemark 35.81 3108.0
## 357 Danemark 61.99 2391.0
## 358 Danemark 69.01 3420.0
## 359 Danemark 73.72 86279.0
## 360 Danemark 40.89 2468.0
## 361 Danemark 46.70 2567.0
## 362 Danemark 24.97 4151.0
## 363 Danemark 25.06 1213.1
## 364 Danemark 39.16 6275.0
## 365 Danemark 42.79 1871.0
## 366 Espagne 80.08 24454.0
## 367 Espagne 77.32 108154.7
## 368 Espagne 80.43 1469.0
## 369 Espagne 65.12 1213.1
## 370 Espagne 70.10 5365.0
## 371 Îles Féroé 56.26 1553.0
## 372 Finlande 37.55 1213.1
## 373 Finlande 50.04 9927.0
## 374 Finlande 76.12 25168.0
## 375 Finlande 75.75 29000.0
## 376 France 91.17 108154.7
## 377 France 77.06 49868.0
## 378 France 67.08 3519.0
## 379 France 81.95 43900.0
## 380 France 58.31 108154.7
## 381 France 83.19 47446.0
## 382 France 64.90 83235.0
## 383 France 92.77 4506.0
## 384 France 47.26 15985.0
## 385 France 69.54 8861.0
## 386 France 61.59 6203.0
## 387 France 69.89 12757.0
## 388 France 54.65 15417.0
## 389 France 67.27 108154.7
## 390 France 74.50 19361.0
## 391 France 67.40 37200.0
## 392 France 66.49 2652.0
## 393 France 80.21 108154.7
## 394 France 56.77 95443.0
## 395 France 66.14 1430.0
## 396 Île de Man 49.77 24614.0
## 397 Irlande 46.28 7385.0
## 398 Irlande 14.12 16840.0
## 399 Irlande 19.16 8890.0
## 400 Irlande 64.06 26090.0
## 401 Irlande 35.47 12961.0
## 402 Italie 52.61 11003.0
## 403 Italie 34.46 1939.0
## 404 Italie 79.68 55198.0
## 405 Italie 65.31 108154.7
## 406 Italie 82.25 1225.0
## 407 Italie 45.00 8157.0
## 408 Italie 74.96 1942.0
## 409 Italie 79.64 4569.0
## 410 Italie 16.14 6921.0
## 411 Italie 48.75 3701.0
## 412 Italie 64.75 1213.1
## 413 Italie 92.94 71936.0
## 414 Italie 71.59 20909.0
## 415 Luxembourg 21.80 33803.0
## 416 Luxembourg 52.76 47427.0
## 417 Luxembourg 36.42 22375.0
## 418 Luxembourg 79.30 23200.0
## 419 Luxembourg 55.73 1213.1
## 420 Luxembourg 32.51 2159.0
## 421 Pays-Bas 69.89 33800.0
## 422 Pays-Bas 79.77 85853.0
## 423 Pays-Bas 25.76 1213.1
## 424 Pays-Bas 53.70 1534.0
## 425 Pays-Bas 44.70 21255.0
## 426 Pays-Bas 95.86 108154.7
## 427 Pays-Bas 84.14 5096.0
## 428 Pays-Bas 18.61 4338.0
## 429 Pays-Bas 0.00 1213.1
## 430 Pays-Bas 44.71 2991.0
## 431 Pays-Bas 60.03 1236.0
## 432 Pays-Bas 58.64 16094.0
## 433 Norvège 91.93 9336.0
## 434 Norvège 22.47 3564.0
## 435 Norvège 54.33 10793.0
## 436 Autriche 71.96 4353.0
## 437 Autriche 81.25 47284.0
## 438 Autriche 77.34 30716.0
## 439 Pologne 50.14 27708.0
## 440 Pologne 26.12 15678.0
## 441 Pologne 22.47 20630.0
## 442 Pologne 64.41 41395.0
## 443 Pologne 18.06 1213.1
## 444 Pologne 63.82 21826.0
## 445 Pologne 62.08 33534.0
## 446 Suède 14.22 1213.1
## 447 Suède 34.04 15560.0
## 448 Suède 62.91 3884.0
## 449 Suède 28.26 3217.0
## 450 Suède 27.36 5554.0
## 451 Suède 53.23 4695.0
## 452 Suède 86.40 5997.0
## 453 Suède 89.02 92575.0
## 454 Suède 34.35 1213.1
## 455 Suède 58.14 1213.1
## 456 Suède 15.97 1213.1
## 457 Suède 57.82 1213.1
## 458 Suède 35.32 1213.1
## 459 Suède 77.51 14514.0
## 460 Suède 17.26 5443.0
## 461 Suède 72.02 49000.0
## 462 Suède 6.24 1213.1
## 463 Suède 6.18 1213.1
## 464 Suède 82.37 38774.0
## 465 Suède 72.16 40246.0
## 466 Suède 25.92 1213.1
## 467 Suède 88.16 1213.1
## 468 Suède 90.44 4118.0
## 469 Suède 88.58 43360.0
## 470 Suède 70.44 10538.0
## 471 Suède 63.21 1335.0
## 472 Suède 13.03 7357.0
## 473 Suède 83.00 16994.0
## 474 Suède 16.80 3869.0
## 475 Suède 5.15 1213.1
## 476 Suède 66.13 14268.0
## 477 Suède 45.43 20532.0
## 478 Suède 56.24 1213.1
## 479 Suède 36.66 18148.0
## 480 Suisse 55.37 5402.0
## 481 Suisse 47.36 9714.0
## 482 Suisse 20.54 1213.1
## 483 Suisse 7.97 2400.0
## 484 Suisse 77.55 1337.0
## 485 Suisse 68.54 17223.0
## 486 Suisse 73.40 14678.0
## 487 Suisse 26.56 22142.0
## 488 Suisse 31.70 7646.0
## 489 Suisse 31.41 1789.0
## 490 Suisse 55.88 36089.0
## 491 Suisse 53.05 2407.0
## 492 Suisse 30.36 1213.1
## 493 Suisse 93.82 97735.0
## 494 Suisse 38.22 1909.0
## 495 Suisse 51.63 7854.0
## 496 Suisse 13.94 4261.0
## 497 Suisse 75.77 78448.0
## 498 Suisse 85.83 5500.0
## 499 Suisse 40.08 7494.0
## 500 Suisse 98.16 68601.0
## 501 Suisse 57.73 6829.0
## 502 Suisse 88.39 89092.0
## 503 Suisse 43.96 31336.0
## 504 Suisse 29.40 2648.0
## 505 Suisse 78.01 6639.0
## 506 Royaume-Uni 31.03 17803.0
## 507 Royaume-Uni 95.64 10573.0
## 508 Royaume-Uni 92.76 53185.0
## 509 Royaume-Uni 51.61 2980.0
## 510 Royaume-Uni 65.26 30000.0
## 511 Royaume-Uni 81.78 46007.0
## 512 Royaume-Uni 12.90 1789.0
## 513 Royaume-Uni 23.51 1213.1
## 514 Royaume-Uni 84.61 14436.0
## 515 Royaume-Uni 22.58 10829.0
## 516 Royaume-Uni 22.28 4836.0
## 517 Royaume-Uni 83.23 31181.0
## 518 Royaume-Uni 11.09 1788.0
## 519 Royaume-Uni 77.68 2673.0
## 520 Royaume-Uni 61.61 4417.0
## 521 Royaume-Uni 69.01 108154.7
## 522 Royaume-Uni 45.09 1899.0
## 523 Royaume-Uni 77.07 1213.1
## 524 Royaume-Uni 11.60 1213.1
## 525 Royaume-Uni 80.75 70100.0
## 526 Royaume-Uni 64.94 11174.0
## 527 Royaume-Uni 50.17 6268.0
## 528 Royaume-Uni 49.20 56092.0
## 529 Royaume-Uni 57.37 3416.0
## 530 Royaume-Uni 32.38 1213.1
## 531 Royaume-Uni 61.87 9903.0
## 532 Royaume-Uni 55.55 32265.0
## 533 Royaume-Uni 34.36 1213.1
## 534 Royaume-Uni 53.78 5382.0
## 535 Royaume-Uni 52.65 1213.1
## 536 Royaume-Uni 74.13 35939.0
## 537 Royaume-Uni 34.09 1330.0
## 538 Royaume-Uni 38.53 7833.0
## 539 Royaume-Uni 17.86 1731.0
## 540 Royaume-Uni 65.93 23705.0
## 541 Royaume-Uni 24.64 2964.0
## 542 Royaume-Uni 15.24 1531.0
## 543 Royaume-Uni 38.89 1436.0
## 544 Royaume-Uni 80.93 51700.0
## 545 Royaume-Uni 29.89 14751.0
## 546 Royaume-Uni 39.34 8578.0
## 547 Royaume-Uni 57.36 8659.0
## 548 Royaume-Uni 30.22 1213.1
## 549 Royaume-Uni 50.35 4121.0
## 550 Royaume-Uni 93.06 4580.0
## 551 Royaume-Uni 80.60 6000.0
## 552 Royaume-Uni 45.58 6416.0
## 553 Royaume-Uni 90.89 87000.0
## 554 Royaume-Uni 38.83 1225.0
## OPERATING PROFIT MARGIN NET SALES OR REVENUES Market Cap ROIC
## 1 3.890 37258000 19258779367 1.913
## 2 6.900 64684500 50720272990 3.050
## 3 12.920 7653000 23936794839 11.810
## 4 18.140 1459321 10401189518 11.290
## 5 3.890 44478400 13272397032 1.913
## 6 9.190 6802000 3430755497 4.690
## 7 11.720 64684500 91361894396 5.020
## 8 7.870 18851300 10044581316 4.610
## 9 15.260 20114000 27359374622 9.710
## 10 11.490 16152000 20615231102 5.780
## 11 5.220 4879702 6326868014 1.913
## 12 3.890 10763299 3768371704 7.050
## 13 7.470 5502200 9866707000 12.350
## 14 3.890 13125000 26905029851 21.317
## 15 22.650 27553000 94844173986 8.000
## 16 8.130 64684500 94844173986 7.170
## 17 3.890 41996000 5091559926 1.913
## 18 3.890 36424000 8223508852 7.650
## 19 6.790 21656244 17354714891 10.120
## 20 12.090 64684500 81603483225 8.070
## 21 14.150 4628400 9612911099 14.760
## 22 8.260 2932544 3430755497 7.070
## 23 5.360 12821800 11015850000 9.220
## 24 11.040 23640000 34655619023 21.000
## 25 5.490 59316000 45215140036 14.920
## 26 11.270 43545000 60272637982 6.240
## 27 9.710 13019000 8025423213 1.913
## 28 3.890 41003000 26052921853 7.840
## 29 7.630 13108000 11887660000 17.680
## 30 8.260 8806500 6119104896 6.150
## 31 3.890 4070700 5674748332 1.990
## 32 15.670 4135000 3430755497 9.890
## 33 12.490 3407854 14247785632 8.120
## 34 3.890 18928100 3826044393 6.780
## 35 3.890 64684500 8814430486 5.210
## 36 3.890 6482500 8944138017 5.990
## 37 10.060 11227000 9755036621 1.913
## 38 22.000 13170000 22883092571 5.780
## 39 22.120 4913000 17063912657 10.510
## 40 8.820 5638000 5472663282 7.100
## 41 21.150 2242300 10122575154 3.350
## 42 29.840 46816140 92619268051 6.780
## 43 3.890 2220930 3430755497 2.800
## 44 15.140 64684500 94844173986 9.710
## 45 12.990 20582659 37822752654 14.350
## 46 7.910 64684500 91583193962 1.930
## 47 7.030 64684500 94844173986 9.350
## 48 14.100 64684500 94844173986 6.700
## 49 24.820 14374000 94844173986 20.890
## 50 30.540 17939000 94844173986 21.317
## 51 37.642 64684500 94844173986 21.317
## 52 3.890 64684500 23926092527 5.610
## 53 37.642 4443560 19942500000 11.130
## 54 11.180 1000023 27495972244 1.930
## 55 27.010 5570100 26381025841 15.790
## 56 18.210 41444000 32239897379 1.913
## 57 22.510 2949889 4774445631 2.270
## 58 16.370 64684500 47159938383 1.913
## 59 11.160 23035000 25171174274 6.100
## 60 3.890 7190589 9860268500 4.900
## 61 8.210 19608000 20914721053 1.913
## 62 37.642 1153103 5422204523 6.320
## 63 37.642 888640 4134205936 8.030
## 64 23.130 11881000 23215666393 2.390
## 65 14.290 36437908 68541949575 4.960
## 66 16.250 26145000 63819362243 21.317
## 67 22.010 5098691 11608015531 7.300
## 68 3.890 42478000 21706139704 1.913
## 69 8.880 48422000 26858426795 2.500
## 70 8.300 3399000 3783660788 8.920
## 71 5.330 23315000 26681659144 1.913
## 72 5.880 5170000 4315748634 7.460
## 73 19.630 1595800 3430755497 21.317
## 74 6.460 10055000 13745940545 9.250
## 75 12.050 10238000 16856799949 9.960
## 76 19.850 5447000 15101005905 8.550
## 77 21.490 1843500 8994987606 13.790
## 78 13.190 15925000 31272056970 21.317
## 79 12.210 9981800 19969333165 21.317
## 80 23.820 1051000 5112095508 21.317
## 81 7.100 3547000 4777471473 16.620
## 82 4.830 24843400 13988485021 1.913
## 83 7.060 64684500 31028811199 2.440
## 84 6.780 4434000 3430755497 7.590
## 85 7.340 11588000 3430755497 21.317
## 86 37.642 1221774 6114591955 4.010
## 87 16.390 21920100 76967248080 7.710
## 88 3.890 64684500 15821821879 4.540
## 89 9.740 64684500 94844173986 7.130
## 90 18.570 29873600 94844173986 12.570
## 91 12.270 4049000 8011679560 4.850
## 92 3.890 37929000 11897801661 7.230
## 93 17.010 37631000 94844173986 3.940
## 94 4.090 64684500 53745506476 3.270
## 95 15.770 25287000 37771623398 6.510
## 96 27.740 9182000 48435123533 7.290
## 97 21.190 53670000 94844173986 13.810
## 98 3.890 4680630 5656631371 3.060
## 99 5.130 21954000 10725256916 9.430
## 100 12.330 24135000 21411230913 9.960
## 101 7.640 18401000 24243508311 11.280
## 102 30.080 15883500 57194955012 14.160
## 103 9.080 7353900 5936051136 8.120
## 104 37.642 1546600 6125688988 2.180
## 105 15.150 27158000 73488794490 8.390
## 106 6.410 27188700 18144936582 3.860
## 107 7.800 42573000 28027173637 4.960
## 108 10.980 14125000 31665555691 7.760
## 109 10.590 48753000 54702563198 7.590
## 110 23.390 1125900 8924186505 8.840
## 111 10.280 18690000 9255996129 4.330
## 112 11.020 50716000 19478458178 1.930
## 113 14.810 64684500 64455660921 3.210
## 114 4.790 55537000 6957604901 1.913
## 115 12.300 42238000 30936883202 4.990
## 116 12.170 3740215 3430755497 3.080
## 117 13.810 5099700 11901248654 9.450
## 118 37.642 888640 8007814570 8.240
## 119 5.210 60058000 27579845904 1.920
## 120 6.890 8072000 8662132148 13.640
## 121 24.050 2692800 7854360942 1.913
## 122 18.690 6622300 21415407865 10.440
## 123 10.060 8738000 8531460827 7.300
## 124 19.640 4700000 12919078571 5.600
## 125 4.510 16648000 5179756982 5.530
## 126 4.780 13742300 5665809446 3.670
## 127 34.470 1085277 9594750000 4.860
## 128 15.080 2381600 10318620707 6.600
## 129 4.630 19477000 4326330535 3.760
## 130 12.140 2674800 10445146761 10.540
## 131 24.620 3713026 24861945436 13.600
## 132 9.970 25129000 28777628512 8.110
## 133 3.890 17271865 6131829144 8.410
## 134 10.250 4659100 14125166069 13.170
## 135 11.740 9048000 9748631341 9.090
## 136 11.160 6182000 5749794769 2.230
## 137 27.120 2820680 8554905086 2.510
## 138 20.360 24786000 38206904975 2.110
## 139 9.460 7324000 5108125055 6.350
## 140 3.890 6912800 5020658514 7.060
## 141 11.190 64684500 60359578839 4.010
## 142 10.760 64684500 49029222133 1.913
## 143 37.642 2665000 17529986527 6.100
## 144 37.642 2287900 15710097472 5.960
## 145 31.420 1481848 8618674091 19.020
## 146 5.270 13784000 5521664868 10.080
## 147 4.740 11519000 7513401773 5.730
## 148 25.060 1820020 4991935070 7.610
## 149 14.070 25828000 21114918023 1.913
## 150 24.020 3766615 36244301963 21.317
## 151 3.890 63175710 24724187779 1.913
## 152 7.980 912800 22985473623 12.300
## 153 3.890 6054000 17657952244 3.400
## 154 17.510 5487000 13572016937 8.770
## 155 16.380 23969000 54322443665 7.830
## 156 11.940 19482000 20637316576 7.650
## 157 6.020 32328000 10350122138 5.260
## 158 19.940 1124660 14291640141 18.980
## 159 3.890 23676000 9276076250 10.810
## 160 21.400 4612000 24407042123 13.470
## 161 7.250 2576602 3467716482 1.913
## 162 23.020 11820000 94844173986 15.710
## 163 9.570 24858000 14645766667 5.920
## 164 19.760 12544000 5436731033 2.670
## 165 4.020 64684500 28001880010 7.560
## 166 19.070 33976000 36285059701 3.100
## 167 8.690 6247000 4668893284 7.900
## 168 17.080 8004000 6039338898 8.650
## 169 13.910 19075000 42381973386 4.850
## 170 3.890 64684500 37943184865 4.710
## 171 17.270 40720276 94844173986 12.120
## 172 3.890 2540477 33459364069 3.370
## 173 11.670 43615000 75203587462 9.680
## 174 3.890 64684500 94844173986 1.913
## 175 12.110 9346300 51863677485 11.590
## 176 23.060 64684500 94844173986 6.700
## 177 17.710 64684500 94844173986 2.970
## 178 8.250 64684500 94844173986 5.590
## 179 25.080 12237589 78219199336 21.317
## 180 37.642 29765414 94844173986 2.730
## 181 26.780 27799300 94844173986 21.317
## 182 22.620 7967486 3948265808 2.670
## 183 14.090 23461000 15308460817 7.560
## 184 4.100 13560700 4371695347 4.920
## 185 18.590 1885265 3430755497 9.700
## 186 10.410 14333009 17241203296 3.550
## 187 7.470 16938000 8091640331 4.590
## 188 3.890 18638220 12145687809 12.790
## 189 7.450 64684500 94844173986 17.900
## 190 4.520 64684500 94844173986 2.100
## 191 5.360 64684500 68741518845 13.780
## 192 12.190 36588000 53050349000 1.913
## 193 33.440 64684500 94844173986 3.070
## 194 4.870 64684500 36733882870 9.670
## 195 12.590 13555000 26046592501 10.670
## 196 37.642 4093000 94844173986 21.317
## 197 37.642 61280000 94844173986 2.780
## 198 37.642 5821000 49697284767 7.640
## 199 14.280 64684500 94844173986 4.710
## 200 12.910 46517000 94844173986 14.600
## 201 4.030 24445000 27836556068 21.317
## 202 8.890 42277000 52825585207 9.760
## 203 17.040 7038000 35058372609 14.320
## 204 14.330 15508000 28058457967 12.790
## 205 37.642 2350000 31287523922 6.400
## 206 15.330 64684500 94844173986 12.540
## 207 32.000 64684500 94844173986 1.913
## 208 12.770 18503000 25086408582 5.830
## 209 11.190 64684500 94844173986 9.260
## 210 10.340 13738000 94844173986 17.250
## 211 3.890 16959000 84177181010 21.317
## 212 8.120 3106000 3430755497 14.110
## 213 12.140 6600000 18513036195 15.930
## 214 15.910 11453000 30040221019 10.550
## 215 8.090 7309036 12404819080 12.080
## 216 14.710 4509000 24789129608 9.280
## 217 14.670 6203000 33597704975 10.300
## 218 9.650 64684500 68918470776 9.350
## 219 22.350 48292384 94844173986 12.860
## 220 13.750 888640 3938907597 11.210
## 221 4.290 26006781 6064905891 13.860
## 222 13.300 26722000 29092433528 5.900
## 223 10.280 27777258 59100932211 6.590
## 224 19.490 2763200 21080563908 14.650
## 225 17.550 5920000 40998061922 7.140
## 226 6.100 23962000 17219192472 6.190
## 227 37.642 888640 5557117954 7.330
## 228 12.740 11271000 19896912765 19.090
## 229 9.910 2761554 10337927346 21.317
## 230 23.960 3082900 18969147545 21.317
## 231 16.690 64684500 94844173986 14.210
## 232 3.890 11579200 5304403447 8.960
## 233 3.890 48469170 25857753687 3.110
## 234 10.680 6139459 6472761322 10.110
## 235 13.880 15990686 55526481304 12.290
## 236 17.330 888640 8460000000 9.990
## 237 4.720 3301002 3625000000 8.620
## 238 13.010 8109200 40410275997 13.060
## 239 12.850 25506000 6117055138 12.150
## 240 27.340 3881097 13294277532 4.810
## 241 11.260 4763100 4957363254 15.170
## 242 31.490 888640 4647232639 1.913
## 243 15.440 888640 3430755497 18.820
## 244 16.090 1130768 3430755497 12.030
## 245 31.950 12867000 87697367000 15.820
## 246 24.400 2591900 7832241216 11.900
## 247 9.270 18305000 23392605859 16.820
## 248 37.642 888640 3430755497 5.700
## 249 37.642 888640 3430755497 9.710
## 250 10.670 1884400 4342848343 20.420
## 251 18.240 1210900 8420533464 14.950
## 252 14.820 19401186 17285977804 1.913
## 253 4.100 6070500 3430755497 21.317
## 254 15.380 16200000 16223466284 6.950
## 255 25.640 64684500 94844173986 1.913
## 256 11.670 21375000 14773428183 3.190
## 257 8.230 15824000 13209083743 8.870
## 258 9.690 3869000 5554182746 5.890
## 259 28.170 3649400 6740462349 21.317
## 260 37.642 888640 4176802882 1.913
## 261 3.890 64684500 26393345818 3.170
## 262 4.780 16637700 6757972076 10.520
## 263 11.050 7331600 19762603167 12.110
## 264 7.500 6171000 4328651874 6.410
## 265 7.520 49224000 30373779863 2.160
## 266 19.070 4341300 4485921825 20.070
## 267 20.400 4016734 11131487264 9.690
## 268 26.600 33754000 89244089198 13.690
## 269 9.500 2661900 3924036166 1.913
## 270 13.780 19062680 94844173986 6.030
## 271 15.370 23459000 17928166817 10.310
## 272 5.390 10377300 3430755497 1.913
## 273 17.550 29944000 25214331082 1.913
## 274 16.580 2987000 7988959787 17.060
## 275 16.110 2720200 6248103876 21.317
## 276 18.290 4167400 8490451104 21.317
## 277 4.720 11685000 5148640392 3.350
## 278 3.890 29007000 5584980410 2.630
## 279 3.890 26825000 4551101022 1.913
## 280 5.780 9326700 9892790070 10.740
## 281 10.790 2714400 9654654759 14.180
## 282 13.180 1545000 3430755497 8.540
## 283 35.260 2314000 40298235349 7.890
## 284 19.140 45421164 94844173986 15.530
## 285 16.830 6350924 7591633350 13.980
## 286 31.140 1767400 7704144923 6.710
## 287 22.810 2047100 5369629961 21.317
## 288 4.680 4702900 3430755497 2.050
## 289 37.642 888640 4195822557 21.317
## 290 15.410 2498000 5666671066 6.570
## 291 21.210 23351470 44200262135 9.910
## 292 37.642 1163000 12749485815 15.890
## 293 25.570 12846000 46171895355 1.913
## 294 26.160 7874000 44169437115 20.220
## 295 35.990 1818500 7620103071 5.110
## 296 3.890 1756600 6096602451 1.913
## 297 37.642 888640 13377316926 9.950
## 298 3.940 9379700 3430755497 17.100
## 299 18.810 15984000 22048914819 2.710
## 300 21.540 1936000 7021387072 12.730
## 301 12.490 1428450 4516751916 1.913
## 302 3.890 2603000 3430755497 1.913
## 303 8.100 25152000 32260009214 16.710
## 304 23.050 14933000 44488524697 4.840
## 305 13.130 1873000 3430755497 14.090
## 306 9.160 38495946 33211588039 1.913
## 307 18.920 888640 3430755497 17.140
## 308 37.642 888640 5279487207 21.317
## 309 16.810 3321900 3430755497 12.770
## 310 37.642 888640 4143278236 3.940
## 311 37.642 888640 5405469288 1.913
## 312 5.320 10745000 4323758397 13.680
## 313 11.360 13234100 10826093161 4.530
## 314 6.910 25071672 18757275082 3.700
## 315 5.930 6255000 7985862768 11.740
## 316 3.940 5374453 5126262581 12.440
## 317 12.010 2572000 3620911567 15.150
## 318 37.642 3322400 30846441628 12.450
## 319 32.340 888640 3430755497 10.900
## 320 25.840 888640 6177612673 21.317
## 321 5.040 63988000 31858389307 8.570
## 322 36.260 888640 6883982329 8.830
## 323 19.350 1826966 23915487263 8.110
## 324 12.310 35409000 18980845465 5.240
## 325 13.100 17476555 16464280064 6.650
## 326 3.890 1809000 6783748842 1.913
## 327 12.380 8029000 37228090443 10.140
## 328 6.150 64684500 86038401826 4.970
## 329 3.890 888640 4258513735 5.810
## 330 30.440 888640 4597064000 4.610
## 331 5.790 12412000 7641060000 9.040
## 332 3.890 1237600 7220248694 13.780
## 333 15.370 14518000 61152189493 11.950
## 334 14.960 6936530 10951928000 15.230
## 335 11.940 2884056 3615865118 13.660
## 336 21.580 888640 7419954194 21.317
## 337 14.480 1443125 6038989862 20.360
## 338 37.642 4522000 11879578629 12.830
## 339 35.320 3032000 25775267341 3.090
## 340 13.790 5194092 6065149247 6.750
## 341 4.740 64684500 68365899614 1.913
## 342 3.890 17485080 9771678968 7.880
## 343 37.642 888640 4008524029 5.420
## 344 3.890 9433900 4427141295 17.250
## 345 37.642 888640 9601511367 16.930
## 346 37.642 888640 6439408123 11.240
## 347 3.890 3798800 8473898984 3.400
## 348 16.190 5585800 12925388295 3.260
## 349 7.560 4270398 5586815351 3.480
## 350 37.642 888640 3959909266 6.700
## 351 5.060 14041500 8373921026 5.830
## 352 12.930 14946000 65350287011 9.980
## 353 26.770 21868000 52283636988 21.317
## 354 37.642 2385684 22253345940 7.890
## 355 8.270 64684500 94844173986 19.050
## 356 17.020 2820000 19667225059 10.180
## 357 3.890 3274000 26333736000 1.913
## 358 29.160 8666323 70689558579 16.770
## 359 3.890 64684500 94844173986 1.913
## 360 21.020 2453853 18813040154 13.240
## 361 19.100 7692479 28872191381 20.420
## 362 18.840 21803000 94844173986 13.150
## 363 37.642 5366000 94844173986 19.520
## 364 16.930 12574000 31522690534 14.770
## 365 28.000 3393347 20342701399 21.317
## 366 14.350 6798120 3983993002 1.913
## 367 3.890 39048873 7141289226 8.130
## 368 36.740 1823699 19525609553 5.060
## 369 37.642 888640 4819090200 5.590
## 370 5.800 1392478 4446639746 1.913
## 371 27.200 4511107 34567028447 10.270
## 372 37.642 888640 4304348096 16.300
## 373 8.950 10984000 24407678033 6.540
## 374 3.890 10720300 9591342926 8.550
## 375 23.920 64684500 35360755816 1.913
## 376 8.670 8562200 4038592022 4.420
## 377 10.640 3281800 3430755497 3.580
## 378 7.450 5228487 3430755497 8.220
## 379 9.800 15898000 12178820553 7.220
## 380 11.600 5355000 18427934017 9.300
## 381 3.890 6953356 3592635050 5.130
## 382 13.230 11001000 13882443722 7.480
## 383 26.370 4734913 11256262575 5.820
## 384 11.280 1845522 5448285399 5.130
## 385 33.520 1626000 11179539904 21.317
## 386 23.730 1440570 27403683710 18.940
## 387 10.040 7370616 12958995300 14.060
## 388 34.040 6883400 94844173986 21.317
## 389 13.800 17390000 65977895412 2.880
## 390 20.370 4018200 50640354398 7.840
## 391 9.900 2623990 4117591566 13.320
## 392 9.410 1955600 6656845837 14.140
## 393 21.170 53670000 94844173986 5.430
## 394 12.690 25098000 41115010083 13.020
## 395 24.480 888640 5790762629 19.660
## 396 4.250 4120412 8027315635 1.913
## 397 5.620 3875700 3430755497 8.390
## 398 13.210 7697400 15410461329 10.870
## 399 7.840 2449016 18515506746 3.340
## 400 11.520 7241300 17894111870 9.560
## 401 7.120 3058158 3430755497 7.360
## 402 11.600 1732063 7729989005 7.190
## 403 31.500 888640 6642966019 21.317
## 404 17.250 17974000 5834895509 3.610
## 405 5.610 32530000 12591281600 1.940
## 406 28.670 981964 7527037466 14.930
## 407 11.140 1182528 4524064569 18.380
## 408 5.830 1643195 11781621107 9.950
## 409 30.210 1627704 12376112333 21.317
## 410 16.590 1368618 4196341790 12.480
## 411 21.410 1842500 11823499945 9.600
## 412 37.642 888640 9711302029 7.560
## 413 6.760 64684500 28051794887 8.110
## 414 3.890 4861153 4403186755 1.913
## 415 7.420 3486295 4678733005 13.510
## 416 12.570 4562800 16141022301 4.040
## 417 9.890 3879202 23469225978 4.460
## 418 11.110 6525626 17365306884 6.140
## 419 37.642 894800 7047064091 7.200
## 420 24.340 1983900 3819431369 4.120
## 421 10.680 9276000 14502230667 5.180
## 422 15.090 23969000 21349251768 4.520
## 423 9.670 2656774 45793005546 21.317
## 424 25.920 888640 4281092486 14.810
## 425 15.020 6945000 14398641344 3.380
## 426 8.980 64684500 83568635661 1.913
## 427 20.480 1365615 10078122357 1.913
## 428 3.890 888640 4168244717 1.913
## 429 3.890 888640 15929376885 1.913
## 430 6.160 2689626 7647000201 8.550
## 431 37.642 888640 7835314048 13.770
## 432 9.780 2841300 4886955965 9.810
## 433 34.450 64684500 94844173986 2.570
## 434 22.620 6698424 74062239750 3.760
## 435 4.900 24081000 59691478816 4.920
## 436 34.380 1699000 3901321641 3.720
## 437 23.040 10088952 11946010409 2.170
## 438 3.890 6673896 4302740399 6.050
## 439 31.310 18420000 38100660020 5.360
## 440 30.440 9526993 23241376794 7.280
## 441 7.290 7646547 29608322452 18.270
## 442 24.040 40587000 25879798739 8.500
## 443 33.050 888640 12169346690 16.520
## 444 4.680 64684500 31468133143 9.340
## 445 10.250 22723000 23840000000 5.600
## 446 7.680 5035553 36721801731 10.460
## 447 37.642 63283000 94844173986 21.317
## 448 6.840 28510000 42036998270 11.630
## 449 14.380 21655000 69845074221 9.410
## 450 37.642 3873230 94844173986 21.317
## 451 18.600 27659000 91008661384 8.250
## 452 14.520 49936000 94844173986 13.150
## 453 10.850 64684500 94844173986 13.320
## 454 37.642 888640 16275700409 21.317
## 455 36.970 6350685 94844173986 21.100
## 456 12.930 1996000 39313046881 5.950
## 457 37.642 2983000 24427997462 8.060
## 458 37.642 2541000 80577983658 13.230
## 459 3.890 64684500 53585897910 2.010
## 460 15.510 13845000 78721698808 13.130
## 461 3.890 64684500 44394781753 8.390
## 462 16.420 1413522 22214321571 21.317
## 463 37.642 2957000 47754464358 21.317
## 464 21.670 64684500 94844173986 21.317
## 465 18.330 64684500 94844173986 11.600
## 466 32.980 1480132 31099328469 21.317
## 467 37.642 2856000 38696156855 9.960
## 468 3.890 19591000 94844173986 21.317
## 469 11.530 64684500 77227507259 11.350
## 470 10.120 26559000 73623564045 4.860
## 471 33.630 14248000 64121125693 16.420
## 472 10.720 18411000 79358925060 12.940
## 473 11.170 25342000 94844173986 8.980
## 474 8.110 14817483 54044512923 11.910
## 475 36.150 1480000 32249816581 21.317
## 476 21.120 40849000 94844173986 21.317
## 477 25.760 41381644 94844173986 9.100
## 478 37.642 8010000 73066356410 7.880
## 479 8.700 20629000 42988367483 11.840
## 480 27.070 1270217 7348510876 6.440
## 481 11.980 2653000 3430755497 14.940
## 482 35.030 888640 3430755497 5.740
## 483 12.370 888640 3430755497 18.930
## 484 37.642 1610300 27527700000 21.317
## 485 9.340 4399000 5752254112 1.913
## 486 5.400 3720000 4166512368 8.850
## 487 3.890 7456795 35538664000 1.913
## 488 5.010 10612700 7419871265 9.040
## 489 17.830 888640 4680692701 21.317
## 490 10.770 8243000 12752457564 6.370
## 491 6.310 888640 3430755497 7.010
## 492 19.590 888640 5417822147 10.010
## 493 30.790 61466000 94844173986 21.317
## 494 33.150 1210084 4832475125 8.800
## 495 26.140 965341 7515028034 15.040
## 496 12.930 2044519 3430755497 21.070
## 497 4.570 21094000 31261929904 21.317
## 498 9.770 1980343 6624349406 3.780
## 499 25.490 1596225 18946429110 19.880
## 500 17.730 34449441 63792748204 4.660
## 501 6.330 10690600 6254840328 8.410
## 502 3.890 64684500 60686956185 1.990
## 503 4.130 8848600 3430755497 1.913
## 504 29.010 2152739 19156054706 21.317
## 505 16.280 4109400 10444767207 1.990
## 506 30.500 4499600 17594294804 15.430
## 507 13.990 4565331 4579472491 4.830
## 508 37.642 25877000 77913974327 6.250
## 509 15.720 3213243 3430755497 19.820
## 510 5.830 6955700 3430755497 4.490
## 511 34.200 33745102 88394711651 13.900
## 512 37.642 888640 3430755497 4.390
## 513 37.642 888640 3430755497 19.420
## 514 23.090 2701797 8970795210 21.317
## 515 37.642 1356000 6744605197 21.317
## 516 12.860 7824000 3430755497 6.900
## 517 8.170 52334000 15051648404 9.840
## 518 37.642 888640 3430755497 18.090
## 519 25.980 2957400 4439748888 20.660
## 520 6.500 11888027 6165274281 1.913
## 521 3.890 63911000 21394685557 7.350
## 522 6.870 888640 3430755497 4.300
## 523 37.642 888640 3430755497 7.640
## 524 27.220 888640 3430755497 21.317
## 525 5.690 64684500 80619333040 2.640
## 526 21.100 2890300 7962330855 3.540
## 527 17.790 2063000 4128113442 3.300
## 528 4.680 10967000 5074204403 1.913
## 529 25.970 1019200 3430755497 5.880
## 530 37.642 888640 4731334373 21.317
## 531 16.510 1583600 3953248895 21.317
## 532 7.650 4717800 6780369437 21.317
## 533 37.642 888640 3430755497 1.913
## 534 23.480 1478200 3430755497 5.640
## 535 37.642 888640 3430755497 11.190
## 536 6.820 17126641 21254580844 18.350
## 537 8.520 991849 3430755497 21.317
## 538 20.600 1242400 8208962469 13.660
## 539 10.500 888640 3544334852 4.790
## 540 10.330 1167900 3430755497 19.400
## 541 9.480 888640 3430755497 1.913
## 542 11.740 1959428 3430755497 13.080
## 543 27.700 888640 3430755497 16.860
## 544 3.890 16587000 7016230075 1.913
## 545 6.840 6385000 3780195995 8.550
## 546 21.020 1722239 3863462571 20.760
## 547 12.000 1632000 3430755497 15.370
## 548 37.642 888640 3812407064 5.190
## 549 10.710 2755000 3430755497 10.110
## 550 24.020 1377700 9582143011 15.860
## 551 12.670 33008000 5531079346 9.420
## 552 18.770 3308000 3430755497 21.317
## 553 7.870 64684500 94844173986 6.560
## 554 13.590 888640 3430755497 4.130
## CSR Sustainability Committee
## 1 Oui
## 2 Oui
## 3 Oui
## 4 Oui
## 5 Oui
## 6 Oui
## 7 Oui
## 8 Oui
## 9 Oui
## 10 Oui
## 11 Non
## 12 Oui
## 13 Oui
## 14 Oui
## 15 Oui
## 16 Oui
## 17 Oui
## 18 Oui
## 19 Oui
## 20 Oui
## 21 Oui
## 22 Non
## 23 Oui
## 24 Oui
## 25 Oui
## 26 Oui
## 27 Oui
## 28 Oui
## 29 Oui
## 30 Oui
## 31 Oui
## 32 Oui
## 33 Oui
## 34 Oui
## 35 Oui
## 36 Oui
## 37 Oui
## 38 Oui
## 39 Oui
## 40 Oui
## 41 Oui
## 42 Oui
## 43 Non
## 44 Oui
## 45 Oui
## 46 Oui
## 47 Oui
## 48 Oui
## 49 Oui
## 50 Oui
## 51 Oui
## 52 Oui
## 53 Oui
## 54 Oui
## 55 Oui
## 56 Oui
## 57 Oui
## 58 Oui
## 59 Oui
## 60 Oui
## 61 Oui
## 62 Oui
## 63 Oui
## 64 Oui
## 65 Oui
## 66 Oui
## 67 Oui
## 68 Oui
## 69 Oui
## 70 Oui
## 71 Oui
## 72 Oui
## 73 Oui
## 74 Oui
## 75 Oui
## 76 Oui
## 77 Non
## 78 Oui
## 79 Oui
## 80 Oui
## 81 Oui
## 82 Oui
## 83 Oui
## 84 Oui
## 85 Oui
## 86 Oui
## 87 Oui
## 88 Oui
## 89 Oui
## 90 Oui
## 91 Oui
## 92 Oui
## 93 Oui
## 94 Oui
## 95 Oui
## 96 Oui
## 97 Oui
## 98 Oui
## 99 Oui
## 100 Oui
## 101 Oui
## 102 Oui
## 103 Oui
## 104 Oui
## 105 Oui
## 106 Oui
## 107 Oui
## 108 Oui
## 109 Oui
## 110 Oui
## 111 Oui
## 112 Oui
## 113 Oui
## 114 Oui
## 115 Oui
## 116 Non
## 117 Oui
## 118 Oui
## 119 Oui
## 120 Oui
## 121 Oui
## 122 Oui
## 123 Oui
## 124 Oui
## 125 Oui
## 126 Oui
## 127 Oui
## 128 Oui
## 129 Oui
## 130 Oui
## 131 Non
## 132 Oui
## 133 Oui
## 134 Oui
## 135 Oui
## 136 Non
## 137 Oui
## 138 Oui
## 139 Oui
## 140 Oui
## 141 Oui
## 142 Oui
## 143 Oui
## 144 Oui
## 145 Oui
## 146 Oui
## 147 Oui
## 148 Oui
## 149 Oui
## 150 Oui
## 151 Oui
## 152 Oui
## 153 Oui
## 154 Oui
## 155 Oui
## 156 Oui
## 157 Oui
## 158 Oui
## 159 Oui
## 160 Oui
## 161 Oui
## 162 Oui
## 163 Oui
## 164 Oui
## 165 Oui
## 166 Oui
## 167 Oui
## 168 Oui
## 169 Oui
## 170 Non
## 171 Oui
## 172 Oui
## 173 Oui
## 174 Oui
## 175 Oui
## 176 Oui
## 177 Oui
## 178 Oui
## 179 Oui
## 180 Oui
## 181 Non
## 182 Oui
## 183 Oui
## 184 Oui
## 185 Non
## 186 Oui
## 187 Oui
## 188 Oui
## 189 Oui
## 190 Oui
## 191 Oui
## 192 Oui
## 193 Oui
## 194 Oui
## 195 Oui
## 196 Non
## 197 Oui
## 198 Oui
## 199 Oui
## 200 Oui
## 201 Oui
## 202 Oui
## 203 Oui
## 204 Non
## 205 Non
## 206 Oui
## 207 Oui
## 208 Oui
## 209 Oui
## 210 Non
## 211 Non
## 212 Non
## 213 Oui
## 214 Oui
## 215 Oui
## 216 Oui
## 217 Oui
## 218 Oui
## 219 Oui
## 220 Non
## 221 Oui
## 222 Oui
## 223 Oui
## 224 Oui
## 225 Oui
## 226 Oui
## 227 Oui
## 228 Oui
## 229 Oui
## 230 Oui
## 231 Oui
## 232 Oui
## 233 Oui
## 234 Oui
## 235 Oui
## 236 Non
## 237 Oui
## 238 Oui
## 239 Oui
## 240 Oui
## 241 Oui
## 242 Oui
## 243 Non
## 244 Oui
## 245 Oui
## 246 Oui
## 247 Oui
## 248 Oui
## 249 Oui
## 250 Oui
## 251 Oui
## 252 Oui
## 253 Non
## 254 Oui
## 255 Oui
## 256 Oui
## 257 Oui
## 258 Oui
## 259 Oui
## 260 Oui
## 261 Oui
## 262 Oui
## 263 Oui
## 264 Oui
## 265 Oui
## 266 Oui
## 267 Oui
## 268 Oui
## 269 Oui
## 270 Oui
## 271 Oui
## 272 Oui
## 273 Oui
## 274 Oui
## 275 Non
## 276 Oui
## 277 Oui
## 278 Oui
## 279 Oui
## 280 Oui
## 281 Oui
## 282 Oui
## 283 Oui
## 284 Oui
## 285 Oui
## 286 Oui
## 287 Oui
## 288 Oui
## 289 Non
## 290 Oui
## 291 Oui
## 292 Oui
## 293 Oui
## 294 Oui
## 295 Oui
## 296 Oui
## 297 Oui
## 298 Oui
## 299 Oui
## 300 Non
## 301 Oui
## 302 Non
## 303 Oui
## 304 Oui
## 305 Oui
## 306 Oui
## 307 Oui
## 308 Non
## 309 Oui
## 310 Non
## 311 Oui
## 312 Oui
## 313 Oui
## 314 Oui
## 315 Non
## 316 Oui
## 317 Oui
## 318 Oui
## 319 Oui
## 320 Non
## 321 Oui
## 322 Oui
## 323 Oui
## 324 Oui
## 325 Oui
## 326 Non
## 327 Oui
## 328 Oui
## 329 Non
## 330 Oui
## 331 Oui
## 332 Oui
## 333 Oui
## 334 Oui
## 335 Oui
## 336 Oui
## 337 Oui
## 338 Oui
## 339 Non
## 340 Oui
## 341 Oui
## 342 Oui
## 343 Oui
## 344 Oui
## 345 Non
## 346 Oui
## 347 Non
## 348 Oui
## 349 Non
## 350 Oui
## 351 Non
## 352 Oui
## 353 Oui
## 354 Non
## 355 Oui
## 356 Oui
## 357 Oui
## 358 Oui
## 359 Oui
## 360 Oui
## 361 Non
## 362 Oui
## 363 Oui
## 364 Oui
## 365 Non
## 366 Oui
## 367 Non
## 368 Non
## 369 Non
## 370 Oui
## 371 Oui
## 372 Non
## 373 Oui
## 374 Oui
## 375 Oui
## 376 Oui
## 377 Oui
## 378 Oui
## 379 Oui
## 380 Oui
## 381 Oui
## 382 Oui
## 383 Oui
## 384 Oui
## 385 Oui
## 386 Oui
## 387 Oui
## 388 Oui
## 389 Oui
## 390 Oui
## 391 Oui
## 392 Oui
## 393 Oui
## 394 Oui
## 395 Non
## 396 Oui
## 397 Oui
## 398 Oui
## 399 Oui
## 400 Oui
## 401 Non
## 402 Oui
## 403 Oui
## 404 Oui
## 405 Oui
## 406 Oui
## 407 Non
## 408 Oui
## 409 Oui
## 410 Oui
## 411 Oui
## 412 Oui
## 413 Oui
## 414 Oui
## 415 Non
## 416 Non
## 417 Oui
## 418 Non
## 419 Oui
## 420 Non
## 421 Oui
## 422 Oui
## 423 Non
## 424 Non
## 425 Non
## 426 Oui
## 427 Non
## 428 Non
## 429 Non
## 430 Oui
## 431 Oui
## 432 Non
## 433 Non
## 434 Non
## 435 Oui
## 436 Oui
## 437 Oui
## 438 Non
## 439 Non
## 440 Non
## 441 Non
## 442 Oui
## 443 Non
## 444 Oui
## 445 Non
## 446 Non
## 447 Non
## 448 Oui
## 449 Non
## 450 Non
## 451 Oui
## 452 Oui
## 453 Oui
## 454 Oui
## 455 Non
## 456 Non
## 457 Oui
## 458 Non
## 459 Oui
## 460 Non
## 461 Oui
## 462 Non
## 463 Non
## 464 Non
## 465 Oui
## 466 Non
## 467 Oui
## 468 Oui
## 469 Non
## 470 Oui
## 471 Non
## 472 Non
## 473 Oui
## 474 Non
## 475 Non
## 476 Oui
## 477 Non
## 478 Oui
## 479 Oui
## 480 Oui
## 481 Oui
## 482 Non
## 483 Non
## 484 Oui
## 485 Oui
## 486 Oui
## 487 Oui
## 488 Oui
## 489 Non
## 490 Non
## 491 Oui
## 492 Non
## 493 Oui
## 494 Non
## 495 Oui
## 496 Non
## 497 Non
## 498 Oui
## 499 Oui
## 500 Oui
## 501 Oui
## 502 Oui
## 503 Oui
## 504 Non
## 505 Non
## 506 Oui
## 507 Oui
## 508 Oui
## 509 Oui
## 510 Oui
## 511 Oui
## 512 Oui
## 513 Non
## 514 Oui
## 515 Oui
## 516 Non
## 517 Oui
## 518 Non
## 519 Oui
## 520 Oui
## 521 Oui
## 522 Oui
## 523 Non
## 524 Non
## 525 Oui
## 526 Oui
## 527 Non
## 528 Oui
## 529 Oui
## 530 Non
## 531 Non
## 532 Oui
## 533 Non
## 534 Oui
## 535 Non
## 536 Oui
## 537 Non
## 538 Oui
## 539 Oui
## 540 Oui
## 541 Oui
## 542 Non
## 543 Non
## 544 Oui
## 545 Oui
## 546 Oui
## 547 Oui
## 548 Non
## 549 Oui
## 550 Oui
## 551 Oui
## 552 Oui
## 553 Oui
## 554 Non
## Value - Board Structure/Independent Board Members
## 1 47.830
## 2 92.860
## 3 37.218
## 4 37.218
## 5 37.218
## 6 91.670
## 7 65.000
## 8 70.590
## 9 37.218
## 10 84.620
## 11 50.000
## 12 37.218
## 13 37.218
## 14 45.450
## 15 91.670
## 16 90.480
## 17 92.860
## 18 37.218
## 19 37.218
## 20 50.000
## 21 92.860
## 22 37.218
## 23 92.860
## 24 92.860
## 25 85.710
## 26 92.860
## 27 45.450
## 28 92.860
## 29 45.450
## 30 41.180
## 31 37.218
## 32 88.890
## 33 61.540
## 34 37.218
## 35 91.670
## 36 83.330
## 37 70.590
## 38 37.218
## 39 57.140
## 40 52.940
## 41 50.000
## 42 37.218
## 43 66.670
## 44 38.890
## 45 44.440
## 46 60.000
## 47 75.000
## 48 72.730
## 49 40.000
## 50 37.218
## 51 53.850
## 52 54.550
## 53 50.000
## 54 50.000
## 55 76.920
## 56 56.250
## 57 58.330
## 58 64.710
## 59 38.460
## 60 66.670
## 61 46.150
## 62 57.140
## 63 53.330
## 64 50.000
## 65 73.330
## 66 54.550
## 67 57.140
## 68 66.670
## 69 57.890
## 70 87.500
## 71 92.860
## 72 92.860
## 73 92.860
## 74 92.860
## 75 90.000
## 76 92.860
## 77 92.860
## 78 92.860
## 79 62.500
## 80 92.860
## 81 80.000
## 82 38.100
## 83 37.218
## 84 43.750
## 85 60.000
## 86 64.710
## 87 66.670
## 88 45.000
## 89 71.430
## 90 50.000
## 91 41.670
## 92 37.218
## 93 61.110
## 94 62.500
## 95 50.000
## 96 46.670
## 97 58.820
## 98 50.000
## 99 42.860
## 100 77.780
## 101 37.218
## 102 54.550
## 103 37.218
## 104 55.560
## 105 71.430
## 106 60.000
## 107 57.140
## 108 64.290
## 109 64.710
## 110 61.540
## 111 54.550
## 112 78.570
## 113 78.570
## 114 52.380
## 115 47.060
## 116 83.330
## 117 64.290
## 118 54.550
## 119 52.630
## 120 56.250
## 121 38.460
## 122 72.730
## 123 50.000
## 124 37.218
## 125 71.430
## 126 75.000
## 127 62.500
## 128 66.670
## 129 83.330
## 130 54.550
## 131 66.670
## 132 86.670
## 133 81.820
## 134 53.850
## 135 84.620
## 136 76.920
## 137 75.000
## 138 76.920
## 139 76.920
## 140 81.250
## 141 77.780
## 142 77.780
## 143 64.290
## 144 70.000
## 145 43.750
## 146 75.000
## 147 66.670
## 148 64.290
## 149 87.500
## 150 75.000
## 151 55.560
## 152 88.890
## 153 53.330
## 154 92.860
## 155 66.670
## 156 92.860
## 157 92.860
## 158 92.860
## 159 85.710
## 160 92.860
## 161 37.218
## 162 92.860
## 163 92.860
## 164 92.860
## 165 92.860
## 166 90.000
## 167 92.860
## 168 71.430
## 169 58.330
## 170 63.640
## 171 90.910
## 172 37.218
## 173 81.820
## 174 90.910
## 175 77.780
## 176 53.850
## 177 69.230
## 178 61.540
## 179 62.500
## 180 63.640
## 181 70.000
## 182 92.860
## 183 92.860
## 184 92.860
## 185 50.000
## 186 50.000
## 187 37.218
## 188 50.000
## 189 54.550
## 190 43.750
## 191 38.460
## 192 45.450
## 193 60.000
## 194 72.730
## 195 90.000
## 196 50.000
## 197 81.250
## 198 92.860
## 199 66.670
## 200 75.000
## 201 70.000
## 202 58.330
## 203 92.860
## 204 85.710
## 205 60.000
## 206 50.000
## 207 50.000
## 208 92.860
## 209 61.540
## 210 60.000
## 211 53.850
## 212 92.860
## 213 91.670
## 214 92.860
## 215 37.218
## 216 83.330
## 217 85.710
## 218 92.860
## 219 92.860
## 220 37.218
## 221 92.860
## 222 92.860
## 223 92.860
## 224 88.890
## 225 92.860
## 226 91.670
## 227 37.218
## 228 58.330
## 229 84.620
## 230 92.860
## 231 87.500
## 232 66.670
## 233 92.310
## 234 42.860
## 235 65.000
## 236 37.218
## 237 87.500
## 238 37.218
## 239 73.330
## 240 50.000
## 241 62.500
## 242 60.000
## 243 66.670
## 244 62.500
## 245 58.330
## 246 53.850
## 247 76.920
## 248 57.140
## 249 60.000
## 250 66.670
## 251 54.550
## 252 80.000
## 253 70.000
## 254 63.640
## 255 75.000
## 256 58.330
## 257 55.560
## 258 83.330
## 259 75.000
## 260 72.730
## 261 58.820
## 262 44.440
## 263 66.670
## 264 80.000
## 265 64.290
## 266 54.550
## 267 83.330
## 268 61.540
## 269 72.730
## 270 76.920
## 271 64.290
## 272 61.540
## 273 82.350
## 274 70.000
## 275 61.540
## 276 45.450
## 277 83.330
## 278 70.000
## 279 53.330
## 280 50.000
## 281 54.550
## 282 55.560
## 283 78.570
## 284 85.710
## 285 77.780
## 286 55.560
## 287 70.000
## 288 72.730
## 289 77.780
## 290 81.820
## 291 69.230
## 292 66.670
## 293 66.670
## 294 76.920
## 295 70.000
## 296 57.140
## 297 63.640
## 298 72.730
## 299 66.670
## 300 72.730
## 301 72.730
## 302 71.430
## 303 58.330
## 304 64.290
## 305 66.670
## 306 80.000
## 307 66.670
## 308 66.670
## 309 69.230
## 310 75.000
## 311 58.330
## 312 60.000
## 313 85.710
## 314 75.000
## 315 37.218
## 316 46.150
## 317 62.500
## 318 50.000
## 319 92.860
## 320 85.710
## 321 75.860
## 322 92.860
## 323 91.670
## 324 92.310
## 325 71.430
## 326 37.218
## 327 58.820
## 328 37.218
## 329 87.500
## 330 77.780
## 331 50.000
## 332 85.710
## 333 44.440
## 334 78.570
## 335 83.330
## 336 92.860
## 337 37.218
## 338 37.218
## 339 92.860
## 340 92.860
## 341 92.860
## 342 50.000
## 343 75.000
## 344 37.218
## 345 55.560
## 346 50.000
## 347 37.218
## 348 37.218
## 349 50.000
## 350 63.640
## 351 66.670
## 352 37.218
## 353 90.000
## 354 66.670
## 355 73.330
## 356 66.670
## 357 37.218
## 358 66.670
## 359 66.670
## 360 75.000
## 361 66.670
## 362 42.860
## 363 50.000
## 364 55.560
## 365 63.640
## 366 66.670
## 367 37.218
## 368 41.180
## 369 66.670
## 370 42.860
## 371 83.330
## 372 88.890
## 373 90.000
## 374 57.140
## 375 58.820
## 376 41.670
## 377 55.560
## 378 60.000
## 379 46.150
## 380 64.290
## 381 54.550
## 382 60.000
## 383 37.218
## 384 50.000
## 385 81.820
## 386 40.000
## 387 37.218
## 388 37.218
## 389 38.890
## 390 53.850
## 391 44.440
## 392 37.218
## 393 44.440
## 394 37.218
## 395 50.000
## 396 70.000
## 397 37.218
## 398 92.860
## 399 64.290
## 400 66.670
## 401 57.140
## 402 70.000
## 403 47.060
## 404 76.470
## 405 57.140
## 406 77.780
## 407 37.218
## 408 37.218
## 409 53.850
## 410 66.670
## 411 42.860
## 412 40.000
## 413 66.670
## 414 68.420
## 415 66.670
## 416 50.000
## 417 75.000
## 418 45.450
## 419 42.860
## 420 52.940
## 421 92.860
## 422 37.218
## 423 75.000
## 424 92.860
## 425 42.860
## 426 84.620
## 427 92.860
## 428 92.860
## 429 87.500
## 430 92.860
## 431 72.730
## 432 92.860
## 433 37.218
## 434 66.670
## 435 66.670
## 436 66.670
## 437 85.710
## 438 90.000
## 439 61.540
## 440 55.560
## 441 40.000
## 442 41.670
## 443 80.000
## 444 71.430
## 445 60.000
## 446 50.000
## 447 83.330
## 448 44.440
## 449 87.500
## 450 66.670
## 451 66.670
## 452 57.140
## 453 69.230
## 454 85.710
## 455 50.000
## 456 87.500
## 457 71.430
## 458 66.670
## 459 50.000
## 460 40.000
## 461 61.540
## 462 66.670
## 463 88.890
## 464 45.450
## 465 60.000
## 466 92.860
## 467 92.860
## 468 61.540
## 469 64.290
## 470 46.150
## 471 72.730
## 472 75.000
## 473 83.330
## 474 50.000
## 475 62.500
## 476 50.000
## 477 85.710
## 478 80.000
## 479 37.218
## 480 75.000
## 481 75.000
## 482 37.218
## 483 37.218
## 484 63.640
## 485 91.670
## 486 90.000
## 487 80.000
## 488 90.910
## 489 92.860
## 490 37.218
## 491 85.710
## 492 37.218
## 493 85.710
## 494 37.218
## 495 75.000
## 496 66.670
## 497 37.218
## 498 62.500
## 499 50.000
## 500 92.860
## 501 81.820
## 502 75.000
## 503 70.000
## 504 40.000
## 505 92.860
## 506 45.450
## 507 56.250
## 508 61.540
## 509 62.500
## 510 58.330
## 511 72.730
## 512 64.290
## 513 60.000
## 514 58.330
## 515 80.000
## 516 66.670
## 517 64.290
## 518 50.000
## 519 56.250
## 520 53.850
## 521 76.920
## 522 37.218
## 523 58.330
## 524 50.000
## 525 85.710
## 526 84.620
## 527 68.750
## 528 60.000
## 529 60.000
## 530 66.670
## 531 80.000
## 532 42.860
## 533 80.000
## 534 62.500
## 535 57.140
## 536 72.730
## 537 57.140
## 538 58.330
## 539 50.000
## 540 75.000
## 541 77.780
## 542 71.430
## 543 63.640
## 544 76.920
## 545 72.730
## 546 54.550
## 547 72.730
## 548 87.500
## 549 72.730
## 550 55.560
## 551 62.500
## 552 70.000
## 553 83.330
## 554 66.670
A travers les digrammes en moustache suivants qu’on a produit tout à l’heure avant d’avoir fait notre traitement des valeurs aberrantes, on observe cependant une grande différence avec ces digrammes en moustaches qu’on a produit après la windorisation. Certes il reste encore des valeurs aberrrantes, mais ceci s’explique par le fait que nous sommes en présence de beaucoup de valeurs aberrantes qui sont utiles dans notre analyse et il serait donc irréaliste de ne plus en avoir du tout. Elles ont certes été réduites, mais elle sont encore présentes dans notre jeu de donnée mais de façon moins extrême, ce qui faussera moins les coefficients dans notre regression.
colonnes <- c("EMPLOYEES", "OPERATING PROFIT MARGIN",
"NET SALES OR REVENUES", "Market Cap", "ROIC")
# Boucle pour tracer un boxplot pour chaque colonne
for (col in colonnes) {
boxplot(eurostoxx_windsorize[[col]],
main = paste("Boxplot de", col),
ylab = col,
col = "lightblue")
}
On commence tout d’abord à effectuer quelques analyses graphiques en prenant soin à différencier entre nos variables qualitative et nos variables quantitatives. Le but de cette analyse est de mieux comprendre notre jeu de données et d’analyser les différentes relations qui existent entre nos variables afin de mieux saisir l’effet des différentes variables sur le environment pillar score qu’on cherche à expliquer.
pander(summary(eurostoxx_windsorize))
| COUNTRY OF DOMICIL | Environment Pillar Score | EMPLOYEES |
|---|---|---|
| Royaume-Uni:125 | Min. : 0.00 | Min. : 1213 |
| France : 69 | 1st Qu.:49.15 | 1st Qu.: 4267 |
| Allemagne : 63 | Median :69.01 | Median : 14682 |
| Suède : 57 | Mean :63.95 | Mean : 31018 |
| Suisse : 53 | 3rd Qu.:82.92 | 3rd Qu.: 45898 |
| Pays-Bas : 28 | Max. :98.16 | Max. :108155 |
| (Other) :159 | NA | NA |
| OPERATING PROFIT MARGIN | NET SALES OR REVENUES | Market Cap |
|---|---|---|
| Min. : 3.890 | Min. : 888640 | Min. :3.431e+09 |
| 1st Qu.: 7.478 | 1st Qu.: 2540608 | 1st Qu.:5.555e+09 |
| Median :12.930 | Median : 7342750 | Median :1.366e+10 |
| Mean :16.244 | Mean :17345953 | Mean :2.768e+10 |
| 3rd Qu.:23.047 | 3rd Qu.:24053000 | 3rd Qu.:3.673e+10 |
| Max. :37.642 | Max. :64684500 | Max. :9.484e+10 |
| NA | NA | NA |
| ROIC | CSR Sustainability Committee | Value - Board Structure/Independent Board Members |
|---|---|---|
| Min. : 1.913 | Oui:447 | Min. :37.22 |
| 1st Qu.: 4.622 | Non:107 | 1st Qu.:50.00 |
| Median : 8.230 | NA | Median :65.00 |
| Mean : 9.614 | NA | Mean :65.41 |
| 3rd Qu.:13.750 | NA | 3rd Qu.:80.00 |
| Max. :21.317 | NA | Max. :92.86 |
| NA | NA | NA |
Sur ce graphique on observe la distribution de la variable qu’on cherche à expliquer par pays. Ceci peut être intéressant pour comprendre et voir si un pays ou un groupe de pays a tendence à avoir un score environnemental plus ou moins élevé que d’autres.
Une chose que l’on remarque d’emblée sur le graphique est que tous les pays ne sont pas tous représentés équitablement. C’est à dire que certains pays sont beaucoup plus présents que d’autres et on plusieurs observations, tandis que certains pays sont représentés par une ou un nombre petits d’observations.
On observe que des pays comme le Portugal et l’Espagne qui n’ont pas un grand nombre d’observations semblent avoir en moyenne les scores les plus élevés. Ceci peut être expliqué par un biais d’autoselection ou seules les entreprises qui ont un score élevé sont représentée.
library('ggplot2')
ggplot(eurostoxx_windsorize, aes(x = `COUNTRY OF DOMICIL`, y = `Environment Pillar Score`)) +
geom_boxplot() +
labs(title = "Distribution du Score par Catégorie",
x = "Catégorie",
y = "Score Environment Pillar") +
theme_minimal() +
#On ajoute cette ligne pour avoir le nom des pays affichés de façon claire avec une rotation de 45°
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Ce graphique représente la corrélation entre les différents variables quantitatives. La ligne qui nous intéresse le plus est celle qui représente ‘environment pillar score’ sur laquelle il semblerait que la majorité des variables aient une corrélation positive ou négative avec le score environnemental. Ceci nous indique que nous sommes sur la bonne piste pour plus tard construire notre modèle et comprendre si il s’agit de simples corrélations (comme représentées ici) ou alors si il y a bel et bien un effet de causalité entre nos variables explicatives et la variable du score environnemental.
#Package pour la visualisation
library(GGally)
## Registered S3 method overwritten by 'GGally':
## method from
## +.gg ggplot2
##
## Attachement du package : 'GGally'
## L'objet suivant est masqué depuis 'package:pander':
##
## wrap
ggpairs(eurostoxx_windsorize, columns = c("Environment Pillar Score", "EMPLOYEES","OPERATING PROFIT MARGIN", "NET SALES OR REVENUES","Market Cap","ROIC", "Value - Board Structure/Independent Board Members"))
Le graphique ci-dessous est une autre façon de visualiser la corrélation entre les différentes variables. On observe quelques corrélations entre nos variables explicatives comme ‘employees’ et ‘net sales & revenues’, ce qui est assez logique. Plus une entreprise sera grande, plus elle aura d’employés et aura tendence à réaliser un plus grand nombre de ventes et de revenues. On insistera cependant tout à l’heure sur notre modèle à vérifier comme nous ne sommes pas en présence de multicollinéarité. Le même phénomène est observé pour ‘market capitalization’ et ‘net sales & revenues’.
library(corrplot)
## corrplot 0.95 loaded
library(dplyr)
# Sélectionner uniquement les colonnes numériques
numerique_eurostoxx <- new_eurostoxx %>% select_if(is.numeric)
# Calculer la matrice de corrélation
correlation_matrix <- cor(numerique_eurostoxx, use = "complete.obs")
# Afficher la heatmap
corrplot(correlation_matrix, method = "color", type = "upper", tl.col = "black", tl.srt = 45, tl.cex = 0.7)
Il semblerait qu’il y ait une relation positive entre le nombre d’employés et le score environnemental. Plus le nombre d’employés est grand, plus le score environnemental a tendence à augmenter. Ceci est assez logique puisque généralement, plus une entreprise est grande, le plus grand budget elle aura à consacrer plus améliorer son impact environnemental. (mais ceci n’est pas toujours vrai!).
plot(eurostoxx_windsorize$EMPLOYEES, eurostoxx_windsorize$`Environment Pillar Score`,
main = "Effect of Employees on Environment Pillar Score",
xlab = "Employees",
ylab = "Environment Pillar Score",
col = "blue", pch = 19)
abline(lm(eurostoxx_windsorize$`Environment Pillar Score` ~ eurostoxx_windsorize$EMPLOYEES), col = "red", lwd = 2)
Il ne semble pas y avoir de relation linéaire entre la variable operating profit margin et la variable environement pillar score. Le profit ne jouerait à priori donc pas de rôle important sur le score environnemental d’une entreprise, contrairement au nombre d’employés.
plot(eurostoxx_windsorize$`OPERATING PROFIT MARGIN`, eurostoxx_windsorize$`Environment Pillar Score`,
main = "Effect du Profit sur le Score environnemental",
xlab = "profit",
ylab = "score environnemental",
col = "blue", pch = 19)
abline(lm(eurostoxx_windsorize$`Environment Pillar Score` ~ eurostoxx_windsorize$`OPERATING PROFIT MARGIN`), col = "red", lwd = 2)
Il semblerait cependant qu’il y ait une relation positive entre le revenu et le score environnemental. On remarque sur ce graphique que plus le revenue d’une entreprise augmente, plus le score environnemental aura également tendence à augmenter.
plot(eurostoxx_windsorize$`NET SALES OR REVENUES`, eurostoxx_windsorize$`Environment Pillar Score`,
main = "Effect du Revenue sur le Score environnemental",
xlab = "revenues",
ylab = "score environnemental",
col = "blue", pch = 19)
abline(lm(eurostoxx_windsorize$`Environment Pillar Score` ~ eurostoxx_windsorize$`NET SALES OR REVENUES`), col = "red", lwd = 2)
Il ne semble cependant pas y avoir une relation entre la capitalization boursière et le score environnemental. On voit une légère relation positive, mais reste à voir si celle-ci sera significative dans notre modèle.
plot(eurostoxx_windsorize$`Market Cap`, eurostoxx_windsorize$`Environment Pillar Score`,
main = "Effect de la capitalization du marché sur le Score environnemental",
xlab = "Capitalization du marché",
ylab = "score environnemental",
col = "blue", pch = 19)
abline(lm(eurostoxx_windsorize$`Environment Pillar Score` ~ eurostoxx_windsorize$`Market Cap`), col = "red", lwd = 2)
Il ne semble pas y avoir une forte relation liénaire entre le retour sur capital investi et le score environnemental. On observe une légère tendence vers la baisse entre les deux variable qui indiquerait que plus le retour sur capital augmenterait, plus le score environnemental baisserait, mais cette relation devra également être vérifiée par notre modèle.
plot(eurostoxx_windsorize$ROIC, eurostoxx_windsorize$`Environment Pillar Score`,
main = "Effect du ROIC sur le Score environnemental",
xlab = "ROIC",
ylab = "score environnemental",
col = "blue", pch = 19)
abline(lm(eurostoxx_windsorize$`Environment Pillar Score` ~ eurostoxx_windsorize$ROIC))
Il semblerait qu’il n’y ait pas de relation entre les membres indépendants et le score environnemental.
plot(eurostoxx_windsorize$`Value - Board Structure/Independent Board Members`, eurostoxx_windsorize$`Environment Pillar Score`,
main = "Effect du pourcentage de membres indépendants sur le Score environnemental",
xlab = "Value",
ylab = "score environnemental",
col = "blue", pch = 19)
abline(lm(eurostoxx_windsorize$`Environment Pillar Score` ~ eurostoxx_windsorize$`Value - Board Structure/Independent Board Members`), col = "red", lwd = 2)
Dans cette partie on va construire notre modèle de régression linéaire pour voir la relation entre nos variables explicatives et la variable du score environnemental et on va tenter d’interpréter les résultats obtenus.
La première chose qu’on regarde dans le sommaire de notre modèle est la F-Stastistic globale. On voit que notre modèle est globalement significatif avec une une valeur P qui est largement inférieure à 5%. Cela signifie que au moins une variable dans le modèle explique significativement (est supérieure à 0) la variation du score environnemental.
La deuxième chose qu’on observe est le coefficient de détermination ajusté (Adjusted R squared). Puisque nous sommes en présence d’une régression multiple, on ne se contente pas d’observer le coefficient de détermination (le R squared) puisque celui-ci augmente artificiellement lorsqu’on ajoute des variables dans un modèle, même si elles sont pas significatives. On voit donc à travers le coefficient de détermination ajusté que notre modèle explique plus de 37% de la variabilité du score environnemental.
En regardant les coefficients, on voit que le nombre d’employés, le profit opérationnel, les revenus commerciaux nets, le rendement du capital investi, et la non mise en place d’un comité de soutenabilité CSR contrairement à la mise en place sont significatifs et permettent d’expliquer de façon positive ou négative la variabilité dans le score environnemental.
Les variables comme la capitalization boursière de l’entreprise et le pourcentage de membre indépendants dans le bureau ne sont pas significatives et donc ne permettent pas d’expliquer la variabilité dans le score environnemental. Les interpréter ne servirait à rien car elle sont jugées comme étant indifférentes de 0.
Pour les pays, R a automatiquement pris comme catégorie de référence l’Allemagne et donc les coefficients que l’on voit pour les autres pays sont les différences par rapport à celui de l’Allemagne. On voit par exemple que, la France a un coefficient positif et significatif qui signifie que lorsqu’une entreprise est française, elle a tendence a avoir un impact plus élevé de 0.01 unités sur le score environnemental par rapport à une entreprise allemande. Tous les coefficients pour les pays sont toujours à interpréter par rapport à la catégorie de référence qui est l’Allemagne.
La variable employees qui mesure le nombre d’employés dans une entreprise semble être significative à hauteur de 1%, ce qui dépasse le seuil de 5%. Il semblerait que plus une entreprise a d’employés, plus son score environnemental aurait tendence à augmenter. Pour une augmentation d’une unité d’employés, il y’aurait une augmentation de 0.00006950 unités dans le score environnemental des entreprises.
La variable opearting profit margin représente le profit opérationnel de l’entreprise, et semble être elle aussi significative à un seuil de 1%, qui également dépasse les 5%. Pour une augmentation d’une unité dans la profit opérationnel de l’entreprise, il y aurait une augmentation de 0.1813 unités dans le score environnemental.
La variable net sales and revenues représente les revenus commerciaux nets et est aussi fortement significative dans le modèle et aurait un impact positif sur le score environnemental d’une entreprise. Plus les revenues commerciaux nets sont élevés, plus le score environnemental aura tendence également à être plus haut que la moyenne. Ici, quite à une augmentation d’une unité dans les revenues commerciaux nets d’une entreprise, il y aurait une augmentation de 0.0000002604 unités dans le score environnemental.
La variable ROIC représente le rendement du capital investi. Elle est significative dans notre modèle à hauteur de 5%, mais a un impact négatif sur le score environnemental. Plus le rendement du capital investi augmente, plus le score environnemental aura donc tendence à baisser. Ici, suite à une augmentation d’une unité dans le rendement du capital investi, le score environnemental baisserait de 0.3511 unités.
La variable CSR sustainability committee réprésente la mise en place d’un comité de soutenabilité CSR. Il s’agit d’une variable catégorique et donc R a pris comme catégorie de référence la catégorie ‘Oui’. Le coefficient qui s’affiche ici représente donc la différence de variation dans le score environnemental pour la catégorie ‘Non’ par rapport à la categorie de référence ‘Oui’. Le coefficient est également significatif et donc on observe que lorsqu’une entreprise ne met pas en place un comité de soutenabilité CSR, son score environnemental aura tendence à être plus faible qu’une entreprise qui met en place un comité de souternabilité CSR. Cette différence est de -19.17, ce qui est énorme étant donné que le score environnemental est un nombre entre 0 et 100. La variable comité de soutenabilité CSR influencerait donc le score environnemental à pratiquement hauteur de 20%. Ceci dit, ce résultat est assez logique puisque la mise en place s’un système CSR au sein des entreprise représente une des premières étapes dans la prise de conscience écologique des entreprises de nos jours.
#On crée notre modèle avec environment pillar score comme variable endogène et le reste comme variables exogènes
model1 <- lm(`Environment Pillar Score`~ ., data=eurostoxx_windsorize)
#commande pour avoir le sommaire du modèle
summary(model1)
##
## Call:
## lm(formula = `Environment Pillar Score` ~ ., data = eurostoxx_windsorize)
##
## Residuals:
## Min 1Q Median 3Q Max
## -62.424 -12.105 0.983 12.809 40.230
##
## Coefficients:
## Estimate Std. Error
## (Intercept) 5.601e+01 4.523e+00
## `COUNTRY OF DOMICIL`Bulgarie 8.034e+00 5.301e+00
## `COUNTRY OF DOMICIL`Bermudes -1.988e+01 1.885e+01
## `COUNTRY OF DOMICIL`Danemark -1.068e+01 4.937e+00
## `COUNTRY OF DOMICIL`Espagne 1.345e+01 4.694e+00
## `COUNTRY OF DOMICIL`Finlande 1.001e+01 5.315e+00
## `COUNTRY OF DOMICIL`France 8.743e+00 3.385e+00
## `COUNTRY OF DOMICIL`Irlande -9.550e+00 6.095e+00
## `COUNTRY OF DOMICIL`Italie 2.681e+00 4.313e+00
## `COUNTRY OF DOMICIL`Luxembourg -4.234e+00 7.493e+00
## `COUNTRY OF DOMICIL`Malte -2.853e+01 1.879e+01
## `COUNTRY OF DOMICIL`Pays-Bas 1.403e+00 4.315e+00
## `COUNTRY OF DOMICIL`Norvège -9.092e+00 5.890e+00
## `COUNTRY OF DOMICIL`Autriche 1.036e+00 7.488e+00
## `COUNTRY OF DOMICIL`Portugal 1.599e+01 1.101e+01
## `COUNTRY OF DOMICIL`Suède -8.296e+00 4.073e+00
## `COUNTRY OF DOMICIL`Suisse 2.361e-01 3.504e+00
## `COUNTRY OF DOMICIL`Royaume-Uni -1.749e+00 2.919e+00
## `COUNTRY OF DOMICIL`Îles Féroé -9.192e+00 1.877e+01
## `COUNTRY OF DOMICIL`Île de Man -1.357e+01 1.874e+01
## `COUNTRY OF DOMICIL`Pologne -1.120e+01 7.562e+00
## EMPLOYEES 6.950e-05 3.418e-05
## `OPERATING PROFIT MARGIN` 1.813e-01 8.867e-02
## `NET SALES OR REVENUES` 2.604e-07 6.785e-08
## `Market Cap` 6.141e-11 4.661e-11
## ROIC -3.511e-01 1.454e-01
## `CSR Sustainability Committee`Non -1.917e+01 2.239e+00
## `Value - Board Structure/Independent Board Members` 5.655e-02 5.048e-02
## t value Pr(>|t|)
## (Intercept) 12.382 < 2e-16 ***
## `COUNTRY OF DOMICIL`Bulgarie 1.516 0.130187
## `COUNTRY OF DOMICIL`Bermudes -1.055 0.291975
## `COUNTRY OF DOMICIL`Danemark -2.163 0.031005 *
## `COUNTRY OF DOMICIL`Espagne 2.866 0.004328 **
## `COUNTRY OF DOMICIL`Finlande 1.883 0.060189 .
## `COUNTRY OF DOMICIL`France 2.583 0.010065 *
## `COUNTRY OF DOMICIL`Irlande -1.567 0.117755
## `COUNTRY OF DOMICIL`Italie 0.622 0.534402
## `COUNTRY OF DOMICIL`Luxembourg -0.565 0.572249
## `COUNTRY OF DOMICIL`Malte -1.519 0.129482
## `COUNTRY OF DOMICIL`Pays-Bas 0.325 0.745101
## `COUNTRY OF DOMICIL`Norvège -1.544 0.123306
## `COUNTRY OF DOMICIL`Autriche 0.138 0.890057
## `COUNTRY OF DOMICIL`Portugal 1.452 0.147211
## `COUNTRY OF DOMICIL`Suède -2.037 0.042185 *
## `COUNTRY OF DOMICIL`Suisse 0.067 0.946294
## `COUNTRY OF DOMICIL`Royaume-Uni -0.599 0.549396
## `COUNTRY OF DOMICIL`Îles Féroé -0.490 0.624442
## `COUNTRY OF DOMICIL`Île de Man -0.724 0.469167
## `COUNTRY OF DOMICIL`Pologne -1.481 0.139248
## EMPLOYEES 2.033 0.042510 *
## `OPERATING PROFIT MARGIN` 2.044 0.041424 *
## `NET SALES OR REVENUES` 3.838 0.000139 ***
## `Market Cap` 1.318 0.188217
## ROIC -2.415 0.016062 *
## `CSR Sustainability Committee`Non -8.562 < 2e-16 ***
## `Value - Board Structure/Independent Board Members` 1.120 0.263111
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 18.53 on 526 degrees of freedom
## Multiple R-squared: 0.406, Adjusted R-squared: 0.3755
## F-statistic: 13.31 on 27 and 526 DF, p-value: < 2.2e-16
On crée un deuxième modèle où on ne garde que les variables explicatives. On voit que notre modèle est globalement significatif, mais cependant le coefficient de détermination ajusté est plus faible sur ce dexième modèle que sur le premier. Le premier modèle semble donc être plus judicieux et on gardera les interprétations qu’on a effectué sur le premier modèle.
model2 <- lm(`Environment Pillar Score`~ `COUNTRY OF DOMICIL` + EMPLOYEES + `OPERATING PROFIT MARGIN`+ `NET SALES OR REVENUES`+ ROIC + `CSR Sustainability Committee`, data=new_eurostoxx)
summary(model2)
##
## Call:
## lm(formula = `Environment Pillar Score` ~ `COUNTRY OF DOMICIL` +
## EMPLOYEES + `OPERATING PROFIT MARGIN` + `NET SALES OR REVENUES` +
## ROIC + `CSR Sustainability Committee`, data = new_eurostoxx)
##
## Residuals:
## Min 1Q Median 3Q Max
## -62.15 -12.27 1.20 14.23 47.20
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 6.485e+01 2.632e+00 24.641 < 2e-16 ***
## `COUNTRY OF DOMICIL`Bulgarie 8.605e+00 5.501e+00 1.564 0.118352
## `COUNTRY OF DOMICIL`Bermudes -2.248e+01 1.961e+01 -1.146 0.252292
## `COUNTRY OF DOMICIL`Danemark -8.495e+00 4.774e+00 -1.779 0.075737 .
## `COUNTRY OF DOMICIL`Espagne 1.589e+01 4.800e+00 3.310 0.000995 ***
## `COUNTRY OF DOMICIL`Finlande 8.725e+00 5.441e+00 1.604 0.109417
## `COUNTRY OF DOMICIL`France 1.045e+01 3.389e+00 3.084 0.002153 **
## `COUNTRY OF DOMICIL`Irlande -1.103e+01 6.348e+00 -1.738 0.082799 .
## `COUNTRY OF DOMICIL`Italie 2.821e+00 4.483e+00 0.629 0.529464
## `COUNTRY OF DOMICIL`Luxembourg -3.213e+00 7.780e+00 -0.413 0.679780
## `COUNTRY OF DOMICIL`Malte -3.284e+01 1.951e+01 -1.683 0.092877 .
## `COUNTRY OF DOMICIL`Pays-Bas 2.508e+00 4.418e+00 0.568 0.570525
## `COUNTRY OF DOMICIL`Norvège -5.910e+00 5.657e+00 -1.045 0.296611
## `COUNTRY OF DOMICIL`Autriche 2.713e+00 7.728e+00 0.351 0.725703
## `COUNTRY OF DOMICIL`Portugal 1.445e+01 1.143e+01 1.264 0.206794
## `COUNTRY OF DOMICIL`Suède -3.811e+00 3.751e+00 -1.016 0.310081
## `COUNTRY OF DOMICIL`Suisse 1.192e-01 3.636e+00 0.033 0.973848
## `COUNTRY OF DOMICIL`Royaume-Uni -2.159e+00 3.022e+00 -0.714 0.475390
## `COUNTRY OF DOMICIL`Îles Féroé -7.906e+00 1.951e+01 -0.405 0.685470
## `COUNTRY OF DOMICIL`Île de Man -1.596e+01 1.951e+01 -0.818 0.413471
## `COUNTRY OF DOMICIL`Pologne -8.363e+00 7.844e+00 -1.066 0.286826
## EMPLOYEES 2.146e-05 1.299e-05 1.652 0.099082 .
## `OPERATING PROFIT MARGIN` -2.756e-02 1.590e-02 -1.733 0.083710 .
## `NET SALES OR REVENUES` 1.024e-07 2.058e-08 4.974 8.88e-07 ***
## ROIC -4.198e-02 4.089e-02 -1.027 0.305049
## `CSR Sustainability Committee`Non -2.130e+01 2.313e+00 -9.208 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 19.34 on 528 degrees of freedom
## Multiple R-squared: 0.3504, Adjusted R-squared: 0.3196
## F-statistic: 11.39 on 25 and 528 DF, p-value: < 2.2e-16
Une autre mesure qui permet de comparer les modèles entre eux c’est celle de l’AIC (Akaike Information Criterion). On calcule donc l’AIC des deux modèles qu’on a construit pour pouvoir les comparer entre eux. En règle général on choisit le modèle avec le AIC le moins élevé, et dans notre cas c’est encore le 1er modèle qui semble être plus approprié pour expliquer la variable du score environnemental.
aic_value1 <- AIC(model1)
aic_value2 <- AIC(model2)
aic_value1
## [1] 4835.932
aic_value2
## [1] 4881.472
Dans le travail que nous avons présenté on a tenté de répondre aux questions posées tout en allant plus loin dans notre analyse pour saisir l’effet des variables économiques, commerciales, financières, et de gouvernance sur notre variable environnemental.
Nous avons tout d’abord bien expliqué le choix de la variable environemental score par rapport à celle de carbon intensity pour effectuer notre analyse. Il s’est avéré que la variable carbon intensity était manquante dans notre jeu de données et qu’il n’était donc pas possible d’obtenir des information sur les émissions de carbone des entreprises.
Par la suite, nous avons bien pris soin de nettoyer notre jeu de données en accomplissant les modification suivants:
Ne conserver que les colonnes dont on a besoin pour l’analyse et les renommer
Faire en sorte que R reconnaisse les valeurs manquantes (NA)
Faire en sorte en R différencie entre les variables numériques et catégoriques
Analyser et traiter les valeurs manquantes en les supprimant ou en les remplaçant par la médiane
Analyser et traiter les valeurs aberrantes par méthode de windsorisation
On a utilisé la représentation graphique et les statistiques descriptives pour analyser, reconnaître et traiter les problèmes qui pouvaient exister sur notre jeu de données.
Puis on a également utilisé la représentation graphique et les stastistiques pour analyser les relations entre nos variables avant de passer à la modélisation.
Une fois nos données prêtes, et après avoir réalisé une analyse de données, nous avons pu modéliser nos données à travers une régression linéaire qui nous a permis de bien saisir la relation entre notre variable endogène (score environnemental) et nos variables exogènes. On a pu voir que le modèle construit était stastiquement significatif et que nos variables ont pu expliquer plus de 34% de la variation dans le score environnemental.
Comme tout travail statistique qui est limité par un temps, on doit toujours faire des choix. Tout au long de ce projet, nous avons tenté d’effectuer les choix qui semblaient être les plus raisonnables, mais bien évidemment d’autres choix auraient pû être fait et auraient peut être conclus à un modèle qui explique une plus grande partie de la variation de notre variable d’intérêt. Dans le futur, on peut ajouter d’autres variables, traîter les valeurs manquantes ou aberrantes de façon différente. D’autres analyses suite à la regression peuvent également être faites pour détecter si il y a des problèmes de multicollinarité, de hétéroscédasticité ou d’endogeneité dans le modèle. D’autres modèles de régression comme les GLM peuvent également être mis en place et comparer avec le modèle que nous avons construit dans cette analyse.