1. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les informations rapides
Les cahiers d’étalonnages
Pourquoi passer à R ?
R aux enquêtes de conjoncture
Jean-François Eudeline
INSEE
17 avril 2013
Jean-François Eudeline R aux enquêtes de conjoncture
2. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les informations rapides
Les cahiers d’étalonnages
Pourquoi passer à R ?
1 La production des enquêtes de conjoncture
Les informations rapides
Les cahiers d’étalonnages
Pourquoi passer à R ?
2 La constitution et mise en forme des données
3 Réalisation des cahiers d’étalonnages
Jean-François Eudeline R aux enquêtes de conjoncture
3. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les informations rapides
Les cahiers d’étalonnages
Pourquoi passer à R ?
Une production répétitive
9 enquêtes
12 informations rapides différentes
84 IR par an, aux formats similaires, à partir d’une base de
données commune.
Jean-François Eudeline R aux enquêtes de conjoncture
4. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les informations rapides
Les cahiers d’étalonnages
Pourquoi passer à R ?
Pour chaque information rapide
Une page sur insee.fr
Un document PDF
un fichier excel (séries longues)
un fichier XML pour la banque de données
macroéconomiques (BDM)
Jean-François Eudeline R aux enquêtes de conjoncture
5. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les informations rapides
Les cahiers d’étalonnages
Pourquoi passer à R ?
Les cahiers d’étalonnage
Préparation de la note de conjoncture trimestrielle
5 cahiers : production, emploi, investissement,
consommation, construction
des outils communs : étalonnages, calculs en temps réel,
VAR, VECM
Des présentations communes : tableaux, graphiques,
résultats de modèles
Jean-François Eudeline R aux enquêtes de conjoncture
6. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les informations rapides
Les cahiers d’étalonnages
Pourquoi passer à R ?
Avant R
Chaque chargé d’enquête constitue ses données et
travaille individuellement à sa partie de cahier.
Calcul des modèles par des programmes personnels
éventuellement différents : non cohérence éventuelle des
calculs ou paramètres entre les différentes parties d’un
cahier.
hétérogénéité de la présentation des différentes parties du
cahier.
Multitude des outils utilisés : SAS, R, Rats, Gauss, Excel...
Nombreuses manipulations manuelles (copier-coller...)
sources d’erreurs.
Jean-François Eudeline R aux enquêtes de conjoncture
7. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les informations rapides
Les cahiers d’étalonnages
Pourquoi passer à R ?
Objectifs du passage à R
Mettre en commun la constitution des données
Automatiser le plus possible la réalisation des Informations
Rapides.
Constituer une banque d’outils de calcul de modèles.
Générer automatiquement les cahiers d’étalonnages.
Jean-François Eudeline R aux enquêtes de conjoncture
8. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les informations rapides
Les cahiers d’étalonnages
Pourquoi passer à R ?
Des contraintes
Deux contraintes a priori contradictoires :
mutualisation et centralisation des outils.
responsabilité des agents sur leur enquête et leur partie de
cahier
Deux solutions apportées :
partage du développement avec SVN
conception modulaire des outils
Jean-François Eudeline R aux enquêtes de conjoncture
9. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
1 La production des enquêtes de conjoncture
2 La constitution et mise en forme des données
3 Réalisation des cahiers d’étalonnages
Jean-François Eudeline R aux enquêtes de conjoncture
10. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Architecture du système
prog1.Rsource1 data1.RData
prog2.Rsource2 data2.RData
...
...
...
sourceN progN.R dataN.RData
dataEtal.R donnees.RData
IndSynth.R
IR.R
soldes
IndSynth.RData
SeriesLongues.xls
BDM.xml
Jean-François Eudeline R aux enquêtes de conjoncture
11. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Mise à jour des données
Un programme unique MaJdonnees.R met à jour tout ou
partie des données (dispose d’un menu pour choisir les
données à mettre à jour.
Les programmes sont petit donc faciles à maintenir.
Chaque programme possède un mainteneur.
Un bug dans un programme n’empèche pas les autres
mises à jour de se faire correctement.
Ajouter des nouvelles données est facile. Il suffit de créer
un nouveau programme progN+1.R qui va chercher des
données (sur internet, dans un fichier excel...), le traite,
puis exporte vers dataN+1.RData. Puis on modifie
dataEtal.R pour qu’il importe ces nouvelles données.
Jean-François Eudeline R aux enquêtes de conjoncture
12. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
1 La production des enquêtes de conjoncture
2 La constitution et mise en forme des données
3 Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
Jean-François Eudeline R aux enquêtes de conjoncture
13. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
Des bibliothèques de fonctions I
ts-utils.R contient des fonctions de manipulation des séries
temporelles, ces fonctions complètent celles présentes
dans le package facts développé et maintenu par la
division des comptes trimestriels.
prev-utils.R contient les fonctions de calcul statistique. Le
gros morceau est le calcul de prévisions des modèles en
temps réel.
graph-util.R contient la fonction de création de graphiques
(avec un choix d’options modifiables par défaut)
format-2tex.R et format2html.R sont des bibliothèques de
fonctions d’affichage de bas niveau. Ils contiennent les
même fonctions, on fait appel à l’un ou l’autre suivant le
format de sortie que l’on souhaite.
Jean-François Eudeline R aux enquêtes de conjoncture
14. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
Des bibliothèques de fonctions II
format-macro.R contient des fonctions d’affichage de haut
niveau. Il utilise abondamment les fonctions de
format-2tex.R et format2html.R, et ne contient aucun
formatage direct en LATEXou HTML.
Jean-François Eudeline R aux enquêtes de conjoncture
15. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
la fonction nouvellePartie dans format-2tex.R
nouvellePartie <- function(...,sep=" ",
commencerPage=TRUE,numerotation=TRUE) {
cat( "FloatBarrier n")
if (commencerPage) sautDePage()
titre <- paste(...,sep="")
cat( "subsection")
if(numerotation==F) cat("*")
cat("{" , sanitizeTexString(titre) , "}nn",
sep="" )
}
Jean-François Eudeline R aux enquêtes de conjoncture
16. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
la fonction nouvellePartie dans format-2html.R
nouvellePartie <- function(...,sep=" ",
commencerPage=TRUE) {
if (commencerPage) sautDePage()
titre <- paste(...,sep="")
cat( "<h2>" , titre , "</h2>nn" , sep=sep )
}
Jean-François Eudeline R aux enquêtes de conjoncture
17. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
La fonction afficheSerie (extrait)
afficheSeries <- function(
.
.
filePath <- paste("img/enq-",idgraph,sep="")
creerFichierImage(filePath)
timeSeriesPrettyPlot(donnees,ylab=titreOrdonnees,xla
main=titreGraph,legende=nomsVar
reencoder=reencoder,afficheMoye
dev.off()
.
.
Jean-François Eudeline R aux enquêtes de conjoncture
18. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
La fonction creerFichierImage version LATEX
creerFichierImage <- function(racineNom,
width=7,height=4) {
fileName<-paste("Output/",racineNom,".tex",sep="")
tikz(file=fileName,width=.8*width,height=.8*height,
sanitize=TRUE)
#pdf(file=fileName,width=.8*width,height=.8*height)
#Marges des graphiques
par(mar=c(3,2,1,0))
}
Jean-François Eudeline R aux enquêtes de conjoncture
19. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
La fonction creerFichierImage version HTML
creerFichierImage <- function(racineNom,width=7,
height=4) {
fileName<-paste("Output/",racineNom,".wmf",sep="")
win.metafile(file=fileName,width=width,
height=height)
par(mar=c(2.5,2,1.5,0.5))
}
Jean-François Eudeline R aux enquêtes de conjoncture
20. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
Un exemple minimal fictif de cahier I
load("donnees.RData")
source("prev-util.R")
modele_exemple <- modele(
titreEtalonnage = "Exemple de modèle",
titreCourt = "Mod_ex",
formule = cprodbtp_ch ~ 1 + fbcf_btp_prl ,
startEst=date_deb,
endEst=date_fin)
result_exemple <- previsions(modele_exemple,
donnees,tempsReel=TRUE,
centrerContrib=T)
Jean-François Eudeline R aux enquêtes de conjoncture
21. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
Un exemple minimal fictif de cahier II
source("format-2tex.R")
source("format-macro.R")
sink("Output/exemple.tex")
debutDocument()
tableDesMatieres()
nouvellePartie("titre")
afficheSeries(donnees=data[,1:2],
nomsVariables=c("Commerce","Services")
titreGraph="Soldes d’opinion",
table=FALSE,
Jean-François Eudeline R aux enquêtes de conjoncture
22. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
Un exemple minimal fictif de cahier III
imageHeight=3.5)
affichePrevisions(result_exemple,contributions=TRUE,
detailCoefficients=TRUE,afficherRMSE=TRUE)
finDocument()
sink()
Jean-François Eudeline R aux enquêtes de conjoncture
23. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
Un vrai exemple de document maître I
rm(list = ls())
prev_indus=-0.3
prev_const=-0.3
prev_termhi=-0.2
prev_interim=-2.4
prev_smna=-0.4
source("utilitaires/format-2tex.R")
source("utilitaires/format-macro.R")
source("cahier-emploi/prev-emploi-france.R")
source("cahier-emploi/prev-emploi-industrie.R")
Jean-François Eudeline R aux enquêtes de conjoncture
24. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
Un vrai exemple de document maître II
source("cahier-emploi/prev-emploi-btp.R")
source("cahier-emploi/prev-emploi-tertiaire.R")
sink("Output/flash-emploi.tex")
debutDocument()
source("cahier-flash-emploi/flash-emploi-modele.R")
finDocument()
sink()
Jean-François Eudeline R aux enquêtes de conjoncture
25. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
Un vrai exemple de document maître III
Un responsable par partie de cahier. Il maintient le
programme prev-emploi-secteur.R.
Ce programme choisit automatiquement les modèles à
estimer en fonction de la dernière valeur de la série
d’emploi et des séries de soldes. Puis il estime ces
modèles.
Le programme flash-emploi-modele.R écrit le cahier.
Jean-François Eudeline R aux enquêtes de conjoncture
26. La production des enquêtes de conjoncture
La constitution et mise en forme des données
Réalisation des cahiers d’étalonnages
Les fonctions
Les cahiers
Merci de votre attention
Jean-François Eudeline R aux enquêtes de conjoncture