Newer
Older
title: "Point d'actualité mensuel contrats aidés"
author: "DARES - Département insertion professionnelle"
date: "`r format(Sys.time(), '%d/%m/%Y')`"
output: html_document
params:
annee_iae: !r lubridate::year(lubridate::today()-months(3))
mois_iae: !r lubridate::month(lubridate::today()-months(3))
chemin_IAE: "./"
annee_cui: !r lubridate::year(lubridate::today()-months(2))
mois_cui: !r lubridate::month(lubridate::today()-months(2))
chemin_CUI: "./"
resume: "INSERER ICI LE RESUME DU MOIS"
table {
border: 1px solid #000;
font-size: 10pt;
h1 {font-size: 18pt;}
h1.title {font-size: 18pt;}
h2 {font-size: 16pt;}
h3 {font-size: 14pt;}
h4 {font-size: 12pt;}
h5 {font-size: 11pt;}
h6 {font-size: 11pt;}
p {font-size: 11pt;}
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE, fig.width = 6, fig.height = 4)
theme_set(theme_light())
theme_update(axis.title.x = element_blank(),
axis.title.y = element_blank(),
legend.title=element_blank(),
axis.text.x = element_text(angle = 45, hjust=1))
update_geom_defaults("line", list(size = 0.75))
d <- dmy(paste(1, params$mois_iae, params$annee_iae))-months(2)
d_m1 <- d-months(1)
d_a1 <- d-years(1)
d_cui <- dmy(paste(1, params$mois_cui, params$annee_cui))
d_cui_m1 <- d_cui-months(1)
d_cui_a1 <- d_cui-years(1)
# Mise en forme des chiffres : arrondis à la centaine et séparateur de milliers
mef <- function(x) {
y <- abs(round(x, digits = 1) * 1000)
y <- prettyNum(y, big.mark=" ")
mef_pourcent <- function(x) {
y <- paste0(prettyNum(y, decimal.mark = ","), " %")
return(y)
}
# + / - devant le chiffre suivant son signe
signe <- function(x) {
return(ifelse(x >= 0, "+", "-"))
NoteMens_IAE <- list()
NoteMens_IAE[["FE"]] <- read.xlsx(params$chemin_IAE, sheet = "NoteMens_FE")
NoteMens_IAE[["Jeune"]] <- read.xlsx(params$chemin_IAE, sheet = "NoteMens_Jeune")
totalFE_IAE <- NoteMens_IAE$FE %>%
summarise_at(vars(-Structure), sum)
totalJeune_IAE <- NoteMens_IAE$Jeune %>%
summarise_at(vars(-Structure), sum)
total_IAE <- bind_rows(
totalFE_IAE,
totalJeune_IAE
colnames(total_IAE) <- c(
paste0(months(d_a1), " ", year(d_a1)),
paste0(months(d_m1), " ", year(d_m1)),
paste0(months(d), " ", year(d)),
"sur un an",
paste0(months(d_a1), " " , year(d_a1)),
paste0(months(d), " ", year(d)),
paste0(months(d_a1), " ", year(d_a1)),
paste0(months(d_m1), " ", year(d_m1)),
paste0(months(d), " ", year(d))
)
rownames(total_IAE) <- c("Ensemble de l'IAE (tous âges)", "Ensemble de l'IAE (moins de 26 ans)")
TdB <- read.xlsx(params$chemin_CUI, sheet = "TdB")
TdB_Jeunes <- read.xlsx(params$chemin_CUI, sheet = "TdB_Jeunes")
# On met le nom des indicateurs en nom de la ligne
row.names(TdB) <- TdB$Indicateur
row.names(TdB_Jeunes) <- TdB_Jeunes$Indicateur
# On enlève la colonne Indicateurs
TdB <- TdB[, -c(1)]
TdB_Jeunes <- TdB_Jeunes[, -c(1)]
# On ne sélectionne que les PEC et les CIE dans le tableau FE
TdB <- TdB[row.names(TdB) %in% c("PEC", "CUI-CIE"), ]
# On ajoute la somme par colonnes
TdB <- rbind(TdB, apply(TdB,2,sum))
rownames(TdB)[3] <- "Somme"
TdB_Jeunes <- rbind(TdB_Jeunes, apply(TdB_Jeunes,2,sum))
rownames(TdB_Jeunes)[3] <- "Somme"
colnames(TdB_fusion) <- c(
paste0(months(d_cui_a1), " ", year(d_cui_a1)),
paste0(months(d_cui_m1), " ", year(d_cui_m1)),
paste0(months(d_cui), " ", year(d_cui)),
paste0(months(d_cui_a1), " ", year(d_cui_a1)),
paste0(months(d_cui) , " ", year(d_cui)),
paste0(months(d_cui_a1), " ", year(d_cui_a1)),
paste0(months(d_cui_m1), " ", year(d_cui_m1)),
paste0(months(d_cui), " ", year(d_cui))
)
rownames(TdB_fusion) <- c(
"PEC", "CUI-CIE", "Ensemble",
"PEC (moins de 26 ans)",
"Ensemble (moins de 26 ans)"
)
IAE_SL <- list(
FE = read.xlsx(params$chemin_IAE_SL, sheet = "IAE Red FE"),
Jeune = read.xlsx(params$chemin_IAE_SL, sheet = "IAE Red Jeune")
)
CUI_SL <- list(
FE = read.xlsx(params$chemin_CUI_SL, sheet = "Serie_Mensuelle_FE"),
Jeune = read.xlsx(params$chemin_CUI_SL, sheet = "Serie_Mensuelle_Jeunes")
)
Stock_FE_iae <- totalFE_IAE$Stock_m
Entree_FE_m_iae <- totalFE_IAE$Entree_m
Entree_Jeunes_m_iae <- totalJeune_IAE$Entree_m
Evol_Stock_a_IAE <- totalFE_IAE$Stock_m-totalFE_IAE$Stock_a_1
Evol_Stock_m_IAE <- totalFE_IAE$Stock_m-totalFE_IAE$Stock_m_1
## calcul des chiffres de la note mensuelle - CIE-CUI
Stock_FE_cui <- TdB["Somme", "Stock_m"]
Stock_FE_PEC <- TdB["PEC", "Stock_m"]
Stock_FE_CIE <- TdB["CUI-CIE", "Stock_m"]
Entree_FE_m_cui <- TdB["Somme", "Entree_m"]
Entree_FE_m_PEC <- TdB["PEC", "Entree_m"]
Entree_FE_m_CIE <- TdB["CUI-CIE", "Entree_m"]
Evol_Stock_m_cui <- TdB["Somme", "Stock_m"] - TdB["Somme", "Stock_m_1"]
Evol_Stock_a_cui <- TdB["Somme", "Stock_m"] - TdB["Somme", "Stock_a_1"]
Evol_Stock_m_PEC <- TdB["PEC", "Stock_m"] - TdB["PEC", "Stock_m_1"]
Evol_Stock_a_PEC <- TdB["PEC", "Stock_m"] - TdB["PEC", "Stock_a_1"]
Evol_Stock_m_CIE <- TdB["CUI-CIE", "Stock_m"] - TdB["CUI-CIE", "Stock_m_1"]
Evol_Stock_a_CIE <- TdB["CUI-CIE", "Stock_m"] - TdB["CUI-CIE", "Stock_a_1"]
Entree_Jeunes_m_cui <- TdB_Jeunes["Somme", "Entree_m"]
Entree_Jeunes_m_PEC <- TdB_Jeunes["PEC", "Entree_m"]
Entree_Jeunes_m_CIE <- TdB_Jeunes["CUI-CIE", "Entree_m"]
Audrey Farges
committed
Bonjour,
Vous trouverez ci-dessous le point d’actualité mensuel sur les effectifs en contrats aidés en `r months(d_cui)` `r year(d_cui)` et en insertion par l’activité économique en `r months(d)` `r year(d)`. Pour mémoire, ce point est établi à partir des données de l’ASP, redressées pour tenir compte des délais de remontée d'informations par les employeurs. Toutes les données détaillées, ainsi que le champ et les sources, sont présentés dans le fichier excel ci-joint.
Le nombre de personnes entrées en **contrats aidés** en `r months(d_cui)` `r year(d_cui)` s'élèverait à `r mef(Entree_FE_m_cui)`, dont `r mef(Entree_FE_m_PEC)` en PEC et `r mef(Entree_FE_m_CIE)` en CUI-CIE.
Le nombre total de bénéficiaires à la fin `r months(d_cui)` `r year(d_cui)` serait de `r mef(Stock_FE_cui)` (`r signe(Evol_Stock_m_cui)``r mef(Evol_Stock_m_cui)` sur un mois et `r signe(Evol_Stock_a_cui)``r mef(Evol_Stock_a_cui)` sur un an), dont `r mef(Stock_FE_PEC)` en PEC (`r signe(Evol_Stock_m_PEC)``r mef(Evol_Stock_m_PEC)` sur un mois et `r signe(Evol_Stock_a_PEC)``r mef(Evol_Stock_a_PEC)` sur un an) et `r mef(Stock_FE_CIE)` en CUI-CIE (`r signe(Evol_Stock_m_CIE)``r mef(Evol_Stock_m_CIE)` sur un mois et `r signe(Evol_Stock_a_CIE)``r mef(Evol_Stock_a_CIE)` sur un an).
```{r echo=FALSE}
CUI_SL$FE %>%
mutate(date = as_date(convertToDate(Mois))) %>%
filter(year(date) >= annee_cui-2 & date <= d_cui) %>%
pivot_longer(c(CIE_EntreeRec, PEC_EntreeRec)) %>%
mutate(Dispositif = factor(
ifelse(name=="PEC_EntreeRec", "PEC", "CUI-CIE"),
levels = c("PEC", "CUI-CIE"), ordered = TRUE)) %>%
mutate(
Année = fct_rev(as.factor(year(date))),
Mois = factor(
months(date), ordered = TRUE,
levels = map_chr(months(0:11), ~months(as_date(.)))
)
) %>%
ggplot(aes(Mois, value, col=Année, group=Année)) +
geom_line(aes(linetype=Année)) +
coord_cartesian(ylim = c(0, NA), clip = 'off') +
geom_point(data=~filter(., date==d_cui), show.legend = FALSE) +
geom_label(
aes(label = round(value,-2)), data=~filter(., date==d_cui),
hjust=-0.1, show.legend = FALSE
) +
facet_wrap(~Dispositif) +
scale_linetype_manual(values=c("solid", "22", "41")) +
scale_colour_brewer(palette="Dark2") +
labs(
title = "Nombre d'entrées mensuelles en contrats aidés",
caption = "Champ : France. Source : Agence de services et de paiement (ASP)"
)
Le nombre de personnes entrées en **insertion par l'activité économique** en `r months(d)` `r year(d)` s'élèverait à `r mef(Entree_FE_m_iae)`, pour un total de `r mef(Stock_FE_iae)` bénéficiaires à la fin `r months(d)` `r year(d)` (`r signe(Evol_Stock_m_IAE)``r mef(Evol_Stock_m_IAE)` sur un mois et `r signe(Evol_Stock_a_IAE)``r mef(Evol_Stock_a_IAE)` sur un an).
```{r echo=FALSE}
IAE_SL$FE %>%
mutate(date = as_date(convertToDate(Mois))) %>%
filter(year(date) >= annee_cui-2 & date <= d) %>%
mutate(entrees = EntreeRec_ACI+EntreeRec_EI+entree_AI+entree_ETTI+entree_EITI) %>%
Année = fct_rev(as.factor(year(date))),
Mois = factor(
months(date), ordered = TRUE,
levels = map_chr(months(0:11), ~months(as_date(.)))
)
) %>%
ggplot(aes(Mois, entrees, col=Année, group=Année)) +
geom_line(aes(linetype=Année)) +
coord_cartesian(ylim = c(0, NA), clip = 'off') +
geom_point(data=~filter(., date==d), show.legend = FALSE) +
geom_label(aes(label = round(entrees,-2)), data=~filter(., date==d), hjust=-0.1, show.legend = FALSE) +
scale_linetype_manual(values=c("solid", "22", "41")) +
scale_colour_brewer(palette="Dark2") +
labs(
title = "Nombre d'entrées mensuelles en insertion par l'activité économique",
caption = "Champ : France. Source : Agence de services et de paiement (ASP)"
)
`r mef(Entree_Jeunes_m_PEC)` jeunes de moins de 26 ans seraient entrés en **PEC** en `r months(d_cui)` `r year(d_cui)`, soit `r mef_pourcent(Entree_Jeunes_m_PEC/Entree_FE_m_PEC)` des entrées totales. `r mef(Entree_Jeunes_m_CIE)` jeunes de moins de 26 ans seraient entrés en **CUI-CIE** en `r months(d_cui)` `r year(d_cui)`, soit `r mef_pourcent(Entree_Jeunes_m_CIE/Entree_FE_m_CIE)` des entrées totales. Le nombre de jeunes bénéficiaires de contrats aidés s'élèverait à `r mef(TdB_Jeunes["Somme", "Stock_m"])` fin `r months(d_cui)`.
`r mef(Entree_Jeunes_m_iae)` jeunes de moins de 26 ans seraient entrés en **insertion par l'activité économique** en `r months(d)` `r year(d)`, soit `r mef_pourcent(Entree_Jeunes_m_iae/Entree_FE_m_iae)` des entrées totales. Le nombre de jeunes bénéficiaires s’élèverait à `r mef(totalJeune_IAE$Stock_m)` fin `r months(d)`.
### Tableaux récapitulatifs
#### Contrats aidés (en milliers de personnes)
```{r echo=FALSE}
TdB_fusion2 <- TdB_fusion
TdB_fusion2[,1] <- TdB_fusion[,3]-TdB_fusion[,1]
TdB_fusion2[,2] <- TdB_fusion[,3]-TdB_fusion[,2]
TdB_fusion2[,4] <- TdB_fusion[,5]-TdB_fusion[,4]
TdB_fusion2[,6] <- TdB_fusion[,8]-TdB_fusion[,6]
TdB_fusion2[,7] <- TdB_fusion[,8]-TdB_fusion[,7]
TdB_fusion2 <- TdB_fusion2[,c(3,2,1,5,4,8,7,6)]
TdB_fusion2[c(1,4,6)] <- lapply(TdB_fusion2[c(1,4,6)], round, 1)
TdB_fusion2[c(2,3,5,7,8)] <- lapply(
TdB_fusion2[c(2,3,5,7,8)],
\(x) paste0(signe(x), format(abs(round(x, 1)), decimal.mark=",", trim=TRUE, nsmall=1))
)
colnames(TdB_fusion2)[c(2,3,7,8)] <- paste0(
"variation depuis ", colnames(TdB_fusion2)[c(2,3,7,8)]
)
colnames(TdB_fusion2)[5] <- paste0("variation par rapport à ", colnames(TdB_fusion2)[5])
colnames(TdB_fusion2) <- sub("\\.[1-2]", "", colnames(TdB_fusion2))
kable(align="c", row.names = TRUE, format.args = list(decimal.mark = ',')) %>%
c("", "Entrées mensuelles" = 3, "Entrées cumulées depuis janvier" = 2, "Stock en fin de mois" = 3),
extra_css = "border-left: 1px solid #000; border-bottom: 1px solid #000; "
column_spec(c(2,5,7), border_left = TRUE, include_thead = TRUE) %>%
row_spec(0, extra_css = "border-bottom: 1px solid #000; ") %>%
row_spec(3, extra_css = "border-bottom: 1px solid #000;")
```
#### Insertion par l'activité économique (en milliers de personnes)
```{r echo=FALSE}
total_IAE2 <- total_IAE
total_IAE2[,1] <- total_IAE[,3]-total_IAE[,1]
total_IAE2[,2] <- total_IAE[,3]-total_IAE[,2]
total_IAE2[,5] <- total_IAE[,6]-total_IAE[,5]
total_IAE2[,7] <- total_IAE[,9]-total_IAE[,7]
total_IAE2[,8] <- total_IAE[,9]-total_IAE[,8]
total_IAE2 <- total_IAE2[,c(3,2,1,6,5,9,8,7)]
total_IAE2[c(1,4,6)] <- lapply(total_IAE2[c(1,4,6)], round, 1)
total_IAE2[c(2,3,5,7,8)] <- lapply(
total_IAE2[c(2,3,5,7,8)],
\(x) paste0(signe(x), format(abs(round(x, 1)), decimal.mark=",", trim=TRUE, nsmall=1))
colnames(total_IAE2)[c(2,3,7,8)] <- paste0(
"variation par rapport à ", colnames(total_IAE2)[c(2,3,7,8)]
colnames(total_IAE2)[5] <- paste0("variation par rapport à ", colnames(total_IAE2)[5])
colnames(total_IAE2) <- sub("\\.[1-2]", "", colnames(total_IAE2))
kable(align="c", row.names = TRUE, format.args = list(decimal.mark = ',')) %>%
c("", "Entrées mensuelles" = 3, "Entrées cumulées depuis janvier" = 2, "Stock en fin de mois" = 3),
extra_css = "border-left: 1px solid #000; border-bottom: 1px solid #000; "
column_spec(c(2,5,7), border_left = TRUE, include_thead = TRUE) %>%
row_spec(0, extra_css = "border-bottom: 1px solid #000;")
_Note :_ les proportions et évolutions sont calculées avec les chiffres non arrondis et peuvent donc différer du calcul avec les chiffres affichés dans les tableaux.