vignettes/vignette2.Rmd
vignette2.Rmd
p <- noyau_pmeasyr(
finess = '750100042',
annee = 2015,
mois = 12,
path = '~/Documents/data/mco',
progress = F)On precise avec progress = F le fait que l’on ne veut pas de barre de progression lors de la lecture des fichiers.
En partant de ces parametres a gauche et en ecrivant les appels de fonctions a droite, avec %>% et les fonctions de pmeasyr, on rend le script plus lisible, et on profite du côte “humain” de la programmation %>%.
Par defaut la fonction adezip() dezippe la totalite des fichiers de l’archive PMSI, on pourra egalement effacer tous les fichiers avec adelete().
On importe toutes les tables du MCO, la syntaxe est plus concise et va de gauche à droite :
# out
p %>% irsa() -> rsa
p %>% iano_mco() -> ano_out
p %>% iium() -> ium
p %>% idiap() -> diap_out
p %>% imed_mco() -> med_out
p %>% idmi_mco() -> dmi_out
p %>% ipo() -> po_out
p %>% ileg_mco() -> leg
p %>% itra() -> tra
# rsa type 6 :
p %>% irsa(typi = 6) -> rsa
# rsa d'une autre annee :
p %>% irsa(annee = 2016) -> rsa
# rsa d'une autre annee, lire les dix premiers rsa :
p %>% irsa(annee = 2016, n_max = 10) -> rsa
# in
p %>% irum() -> rum
p %>% iano_mco(typano = "in") -> ano_in
p %>% imed_mco(typmed = "in") -> med_in
p %>% idmi_mco(typdmi = "in") -> dmi_in
p %>% idiap(typdiap = "in") -> diap_in
p %>% ipo(typpo = "in") -> po_inOn dezippe et on importe les rsa de 2011 a 2015. Les rsa seront dans l’environnement R avec comme nom :
rsa_2011 rsa_2012 rsa_2013 rsa_2014 rsa_2015
p <- noyau_pmeasyr(
finess = '750100042',
mois = 12,
path = "~/Documents/data/mco",
progress = F
)
for (i in 2011:2015){
p %>% adezip(annee = i, type = "out", liste = "rsa")
p %>% irsa(annee = i) -> temp
assign(paste("rsa", i, sep = "_"), temp)
}On peut aussi envisager un import mois par mois si besoin, ou boucler sur une liste de finess (entites geographiques).
Pour l’exemple, on utilise ci-dessous sapply() a la liste des fonctions MCO out, en appelant toutes les fonctions, on cree ainsi un objet contenant toutes les tables du MCO out.
# On liste les fonctions MCO du package :
fout <- c('irsa', 'iano_mco', 'iium', 'idiap', 'imed_mco', 'idmi_mco', 'ipo', 'ileg_mco', 'itra')
sapply(fout, function(x)get(x)(p)) -> liste_tables_mco_out
names(liste_tables_mco_out)
# enlever les i des noms des tables
names(liste_tables_mco_out) <- substr(names(liste_tables_mco_out),2, nchar(names(liste_tables_mco_out)))rsa ano_mco ium diap med_mco dmi_mco po leg_mco tra
# Coller des chaines de caracteres facon pipe
`%+%` <- function(x,y){paste0(x,y)}
dir.create(p$path %+% '/tables')Le repertoire suivant est cree :
'~/Documents/data/mco/tables/'
nom <- p$finess %+% '.' %+% p$annee %+% '.' %+% p$mois %+% '.' %+% 'out' %+% '.' %+% 'rds'
saveRDS(liste_tables_mco_out, p$path %+% '/tables/' %+% nom)Le fichier rds se nomme :
750100042.2015.12.out.rds
# Tout effacer sauf les zip :
p %>% adelete()Avec le noyau de parametres p defini tout en haut de cette page, on a les elements necessaires pour reconstruire le nom du fichier : 750100042.2015.12.out.Rds :
# Coller des chaines de caracteres faon pipe
`%+%` <- function(x,y){paste0(x,y)}
# Le fichier se nomme : 750100042.2015.12.out.Rds
nom <- p$finess %+% '.' %+% p$annee %+% '.' %+% p$mois %+% '.' %+% 'out' %+% '.' %+% 'Rds'
readRDS(p$path %+% '/tables/' %+% nom) -> mydata
View(mydata$rsa$rsa)
View(mydata$rsa$actes)
View(mydata$leg_mco)Les donnees sont de nouveau dans l’environnement R.