Plus d’épargne chez les plus aisés, plus de dépenses contraintes chez les plus modestes - ip1815
Data - INSEE
Info
Lien
Par catégorie
Age
Table
Code
%>%
ip1815 filter(sheet == "fig6",
grepl(" ans", type)) %>%
mutate(`taux d'épargne` = round(100*(1-`Consommation / UC` / `Revenu Disponible Brut / UC`), 1)) %>%
select(-sheet) %>%
print_table_conditional
type | Consommation / UC | Revenu Disponible Brut / UC | taux d'épargne |
---|---|---|---|
Moins de 30 ans | 17924 | 19562 | 8.4 |
30-39 ans | 23865 | 26210 | 8.9 |
40-49 ans | 25270 | 28509 | 11.4 |
50-59 ans | 27276 | 33169 | 17.8 |
60-69 ans | 27215 | 33150 | 17.9 |
70 ans ou plus | 25689 | 34346 | 25.2 |
Graph
Code
%>%
ip1815 filter(sheet == "fig6",
grepl(" ans", type)) %>%
ggplot(., aes(x = `Revenu Disponible Brut / UC`, y = `Consommation / UC`)) + geom_point() +
theme_minimal() + geom_abline(slope = 1) +
scale_x_continuous(breaks = seq(0, 100000, 2000),
labels = dollar_format(pre = "", su = " €")) +
scale_y_continuous(breaks = seq(0, 100000, 2000),
labels = dollar_format(pre = "", su = " €")) +
geom_text_repel(aes(x = `Revenu Disponible Brut / UC`, y = `Consommation / UC`, label = type),
fontface ="plain", color = "black", size = 3)
Taux d’épargne
Code
%>%
ip1815 filter(sheet == "fig6",
grepl(" ans", type)) %>%
ggplot(., aes(x = `Revenu Disponible Brut / UC`, y = 1-`Consommation / UC` / `Revenu Disponible Brut / UC`)) + geom_point(size = 3) +
theme_minimal() + geom_abline(slope = 1) + ylab("Taux d'épargne (%)") +
xlab("Revenu Disponible Brut par Unité de Consommation") +
theme(axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_x_continuous(breaks = seq(0, 100000, 1000),
labels = dollar_format(pre = "", su = " €")) +
scale_y_continuous(breaks = 0.01*seq(0, 100, 1),
labels = percent_format(acc = 1)) +
geom_text_repel(aes(x = `Revenu Disponible Brut / UC`, y = 1-`Consommation / UC` / `Revenu Disponible Brut / UC`-0.005, label = type),
fontface ="plain", color = "red", size = 5)
Quintile
Table
Code
%>%
ip1815 filter(sheet == "fig6",
grepl("quintile", type)) %>%
mutate(`taux d'épargne` = round(100*(1-`Consommation / UC` / `Revenu Disponible Brut / UC`), 1)) %>%
select(-sheet) %>%
print_table_conditional
type | Consommation / UC | Revenu Disponible Brut / UC | taux d'épargne |
---|---|---|---|
1er quintile | 12816 | 13173 | 2.7 |
2e quintile | 19262 | 20273 | 5.0 |
3e quintile | 23592 | 26112 | 9.7 |
4e quintile | 29029 | 32702 | 11.2 |
5e quintile | 40222 | 56153 | 28.4 |
Fonction de consommation
Code
%>%
ip1815 filter(sheet == "fig6",
grepl("quintile", type)) %>%
ggplot(., aes(x = `Revenu Disponible Brut / UC`, y = `Consommation / UC`)) + geom_point() +
theme_minimal() + geom_abline(slope = 1) +
scale_x_continuous(breaks = seq(0, 100000, 5000),
labels = dollar_format(pre = "", su = " €")) +
scale_y_continuous(breaks = seq(0, 100000, 5000),
labels = dollar_format(pre = "", su = " €")) +
geom_text_repel(aes(x = `Revenu Disponible Brut / UC`, y = `Consommation / UC`, label = type),
fontface ="plain", color = "black", size = 3)
Taux d’épargne
Code
%>%
ip1815 filter(sheet == "fig6",
grepl("quintile", type)) %>%
ggplot(., aes(x = `Revenu Disponible Brut / UC`, y = 1-`Consommation / UC` / `Revenu Disponible Brut / UC`)) + geom_point() +
theme_minimal() + geom_abline(slope = 1) + ylab("Taux d'épargne (%)") +
scale_x_continuous(breaks = seq(0, 100000, 5000),
labels = dollar_format(pre = "", su = " €")) +
scale_y_continuous(breaks = 0.01*seq(0, 100, 2),
labels = percent_format(acc = 1)) +
geom_text_repel(aes(x = `Revenu Disponible Brut / UC`, y = 1-`Consommation / UC` / `Revenu Disponible Brut / UC`, label = type),
fontface ="plain", color = "black", size = 3)
Quintile + age
Taux d’épargne
Code
%>%
ip1815 filter(sheet == "fig6") %>%
mutate(classe = case_when(grepl("quintile", type) ~ "Quintiles",
grepl(" ans", type) ~ "Age",
~ "Classe")) %>%
T filter(classe != "Classe") %>%
ggplot(., aes(x = `Revenu Disponible Brut / UC`, y = 1-`Consommation / UC` / `Revenu Disponible Brut / UC`,color = classe)) + geom_point() +
theme_minimal() + geom_abline(slope = 1) + ylab("Taux d'épargne (%)") +
theme(legend.position = c(0.2, 0.8),
legend.title = element_blank()) +
theme(axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_x_continuous(breaks = seq(0, 100000, 2000),
labels = dollar_format(pre = "", su = " €")) +
scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
labels = percent_format(acc = 1)) +
geom_text_repel(aes(x = `Revenu Disponible Brut / UC`, y = 1-`Consommation / UC` / `Revenu Disponible Brut / UC`, label = paste0(type, "\nTaux d'épargne: ", percent(1-`Consommation / UC` / `Revenu Disponible Brut / UC`, acc = 1)), color = classe),
fontface ="plain", size = 3) +
scale_color_manual(values = c("blue", "red"))
Tous
Table
Code
%>%
ip1815 filter(sheet == "fig6") %>%
mutate(classe = case_when(grepl("quintile", type) ~ "Quintiles",
grepl(" ans", type) ~ "Age",
~ "Classe")) %>%
T mutate(`taux d'épargne` = round(100*(1-`Consommation / UC` / `Revenu Disponible Brut / UC`), 1)) %>%
select(-sheet) %>%
print_table_conditional
type | Consommation / UC | Revenu Disponible Brut / UC | classe | taux d'épargne |
---|---|---|---|---|
1er quintile | 12816 | 13173 | Quintiles | 2.7 |
2e quintile | 19262 | 20273 | Quintiles | 5.0 |
3e quintile | 23592 | 26112 | Quintiles | 9.7 |
4e quintile | 29029 | 32702 | Quintiles | 11.2 |
5e quintile | 40222 | 56153 | Quintiles | 28.4 |
Moins de 30 ans | 17924 | 19562 | Age | 8.4 |
30-39 ans | 23865 | 26210 | Age | 8.9 |
40-49 ans | 25270 | 28509 | Age | 11.4 |
50-59 ans | 27276 | 33169 | Age | 17.8 |
60-69 ans | 27215 | 33150 | Age | 17.9 |
70 ans ou plus | 25689 | 34346 | Age | 25.2 |
Agriculteurs | 21698 | 28937 | Classe | 25.0 |
Indépendants et professions libérales | 25307 | 38739 | Classe | 34.7 |
Cadres | 35946 | 42659 | Classe | 15.7 |
Professions intermédiaires | 27910 | 32360 | Classe | 13.8 |
Employés | 22178 | 18895 | Classe | -17.4 |
Ouvriers | 20064 | 22894 | Classe | 12.4 |
Retraités Agriculteurs | 19783 | 30303 | Classe | 34.7 |
Retraités indépendants | 24533 | 35366 | Classe | 30.6 |
Retraités cadres | 37112 | 44940 | Classe | 17.4 |
Retraités professions intermédiaires | 28222 | 31441 | Classe | 10.2 |
Retraités employés | 20931 | 23485 | Classe | 10.9 |
Retraités ouvriers | 18495 | 21622 | Classe | 14.5 |
Autres inactifs | 15417 | 22113 | Classe | 30.3 |
Ensemble | 25184 | 29954 | Classe | 15.9 |
Fonction de consommation
Code
%>%
ip1815 filter(sheet == "fig6") %>%
mutate(classe = case_when(grepl("quintile", type) ~ "Quintiles",
grepl(" ans", type) ~ "Age",
~ "Classe")) %>%
T ggplot(., aes(x = `Revenu Disponible Brut / UC`, y = `Consommation / UC`, color = classe)) + geom_point() +
theme_minimal() + geom_abline(slope = 1) +
theme(legend.position = c(0.7, 0.2),
legend.title = element_blank()) +
scale_x_continuous(breaks = seq(0, 100000, 5000),
labels = dollar_format(pre = "", su = " €")) +
scale_y_continuous(breaks = seq(0, 100000, 5000),
labels = dollar_format(pre = "", su = " €")) +
geom_text_repel(aes(x = `Revenu Disponible Brut / UC`, y = `Consommation / UC`, label = type, color = classe),
fontface ="plain", size = 3)
Taux d’épargne
Code
%>%
ip1815 filter(sheet == "fig6") %>%
mutate(classe = case_when(grepl("quintile", type) ~ "Quintiles",
grepl(" ans", type) ~ "Age",
~ "Classe")) %>%
T ggplot(., aes(x = `Revenu Disponible Brut / UC`, y = 1-`Consommation / UC` / `Revenu Disponible Brut / UC`,color = classe)) + geom_point() +
theme_minimal() + geom_abline(slope = 1) + ylab("Taux d'épargne (%)") +
theme(legend.position = c(0.7, 0.2),
legend.title = element_blank()) +
scale_x_continuous(breaks = seq(0, 100000, 5000),
labels = dollar_format(pre = "", su = " €")) +
scale_y_continuous(breaks = 0.01*seq(-100, 100, 5),
labels = percent_format(acc = 1)) +
geom_text_repel(aes(x = `Revenu Disponible Brut / UC`, y = 1-`Consommation / UC` / `Revenu Disponible Brut / UC`, label = type, color = classe),
fontface ="plain", size = 3)
Données Insee Première
Composition de la dépense de consommation
Code
ig_b("insee", "ip1815", "bind")
Taux d’épargne par quintile
Code
ig_b("insee", "ip1815", "fig5")