Skip to content

Instantly share code, notes, and snippets.

@arnaudgodin
Created June 15, 2016 22:13
Show Gist options
  • Select an option

  • Save arnaudgodin/48c79c347f674953253a9b2870aa80ee to your computer and use it in GitHub Desktop.

Select an option

Save arnaudgodin/48c79c347f674953253a9b2870aa80ee to your computer and use it in GitHub Desktop.
Émile
#Étude sur l'enquête de la dynamique du travail
#Par Arnaud Godin
#Été 2016
#Version R
library(foreign)
dtr<-read.csv("edtr-75M0010-F-2010-fichier-famille-economique_F2.csv")
#On génère les différentes variables nécessaires pour étudier les inégalités de revenu par l'indice de Gini et la courbe de Lorenz
#Revenu de marché:
revmarche<-dtr$mtinc27
#Revenu disponible:
revdisponible<-dtr$mbinc27
#Revenu total avant impôt:
revtotal<-dtr$ttinc27
#On définit une variable de poids plus facilement manipulable:
poids<-dtr$wtcsld26
#Il faut installer le «package» permettant de réaliser les traitements sur les inégalités
install.packages("ineq")
library(ineq)
#On peut maintenant passer au calcul des coefficients de Gini (en utilisant le «package» "ineq":
g1<-round(ineq(revmarche, type="Gini"),4) #L'indice de Gini pour le revenu de marché
g2<-round(ineq(revtotal, type="Gini"),4) #L'indice de Gini pour le revenu total avant impôt
g3<-round(ineq(revdisponible, type="Gini"),4) #L'indice de Gini pour le revenu disponible
#On peut observer la différence avec "reldist":
install.packages("reldist")
library(reldist)
G1<-round(gini(revmarche),4) #L'indice de Gini pour le revenu de marché
G2<-round(gini(revtotal),4) #L'indice de Gini pour le revenu total avant impôt
G3<-round(gini(revdisponible),4) #L'indice de Gini pour le revenu disponible
#En utilisant le poid transversal de l'enquête:
G4<-round(gini(revmarche, weights=poids),4) #L'indice de Gini pour le revenu de marché
G5<-round(gini(revtotal, weights=poids),4) #L'indice de Gini pour le revenu total avant impôt
G6<-round(gini(revdisponible, weights=poids),4) #L'indice de Gini pour le revenu disponible
#On assigne ici les indices de Gini à un vecteur "Gini" et les types de revenus à un vecteur "Revenus"
Gini<-c(g1, g2, g3)
Gini1<-c(G1, G2, G3)
Gini2<-c(G4, G5, G6)
Revenus<-c("Revenu de marché", "Revenu total avant impôt", "Revenu disponible")
#Il s'agit ensuite de placer les deux vecteurs dans un seul tableau
typerevenu<-data.frame(Revenus, Gini, Gini1, Gini2)
#Pour présenter les résultats:
print(typerevenu)
#On passe ensuite aux courbes de Lorenz:
clmarche<-Lc(revmarche, poids) #Courbe de lorenz pour le revenu de marché
cldisponible<-Lc(revdisponible, poids) #Courbe de lorenz pour le revenu disponible
cltotal<-Lc(revtotal, poids) #Courbe de lorenz pour le revenu total avant impôt
#Avant de faire sortir les graphiques, on se concentre d'abord à trouver des couleurs contrastantes:
install.packages("RColorBrewer")
library(RColorBrewer)
couleur<-brewer.pal(n=3, name="Set1")
#Il est maintenant possible de faire un graphique des différentes courbes de lorenz
plot(clmarche, main=NULL, xlab="Pourcentage des ménages", ylab="Pourcentage des revenus" ,col=couleur[1])
lines(cldisponible, col=couleur[2])
lines(cltotal, col=couleur[3])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment