[1] "fr_CA.UTF-8"
Indice des prix à la consommation - Base 2015
Data - INSEE
Info
Données sur l’inflation en France
Title | source | dataset | .html | .RData |
---|---|---|---|---|
Budget de famille 2017 | insee | bdf2017 | 2024-12-22 | 2023-11-21 |
Indices pour la révision d’un bail commercial ou professionnel | insee | ILC-ILAT-ICC | 2024-12-22 | 2024-12-22 |
Indices des loyers - Base 2019 | insee | INDICES_LOYERS | 2024-12-22 | 2024-12-22 |
Indice des prix à la consommation - Base 1970, 1980 | insee | IPC-1970-1980 | 2024-12-22 | 2024-12-22 |
Indices des prix à la consommation - Base 1990 | insee | IPC-1990 | 2024-12-22 | 2024-12-22 |
Indice des prix à la consommation - Base 2015 | insee | IPC-2015 | 2024-12-22 | 2024-12-22 |
Prix moyens de vente de détail | insee | IPC-PM-2015 | 2024-12-22 | 2024-12-22 |
Indices des prix à la consommation harmonisés | insee | IPCH-2015 | 2024-12-22 | 2024-12-22 |
Indice des prix dans la grande distribution | insee | IPGD-2015 | 2024-12-22 | 2024-12-22 |
Indices des prix des logements neufs et Indices Notaires-Insee des prix des logements anciens | insee | IPLA-IPLNA-2015 | 2024-11-22 | 2024-12-22 |
Indices de prix de production et d'importation dans l'industrie | insee | IPPI-2015 | 2024-12-22 | 2024-12-22 |
Indice pour la révision d’un loyer d’habitation | insee | IRL | 2024-11-22 | 2024-12-22 |
Variation des loyers | insee | SERIES_LOYERS | 2024-11-22 | 2024-12-22 |
Consommation effective des ménages par fonction | insee | T_CONSO_EFF_FONCTION | 2024-11-22 | 2024-07-18 |
LAST_COMPILE
LAST_COMPILE |
---|
2024-12-22 |
LAST_UPDATE
Code
`IPC-2015` %>%
group_by(LAST_UPDATE) %>%
summarise(Nobs = n()) %>%
arrange(desc(LAST_UPDATE)) %>%
print_table_conditional()
LAST_UPDATE | Nobs |
---|---|
2024-12-13 | 420592 |
2024-11-26 | 29232 |
2024-08-30 | 1502 |
2024-08-29 | 24 |
2024-08-13 | 3 |
2024-02-16 | 44989 |
2024-01-12 | 42839 |
2023-01-23 | 1158 |
2021-02-19 | 155 |
2021-01-15 | 837 |
2020-02-20 | 88 |
2020-01-30 | 825 |
2020-01-22 | 275 |
2020-01-15 | 2202 |
2019-02-28 | 66 |
2019-02-22 | 510 |
2019-02-21 | 22 |
2019-01-15 | 812 |
2017-01-12 | 378 |
2016-04-13 | 3648 |
2016-02-22 | 78 |
2016-02-18 | 456 |
Last
Code
`IPC-2015` %>%
group_by(TIME_PERIOD, FREQ) %>%
summarise(Nobs = n()) %>%
group_by(FREQ) %>%
filter(TIME_PERIOD == max(TIME_PERIOD)) %>%
print_table_conditional()
TIME_PERIOD | FREQ | Nobs |
---|---|---|
2024 | A | 1420 |
2024-11 | M | 1059 |
Definitions
Moyenne annuelle: l’évolution en moyenne annuelle compare les prix d’une année donnée à ceux de l’année précédente.
Glissement annuel: l’évolution en glissement annuel compare les prix d’un seul mois d’une année donnée à ceux du même mois de l’année précédente.
Méthodo
- Indice des prix à la consommation (base 100=1998) (pdf, fr, 44 Ko, 01/02/2013)
- Indice des prix à la consommation des ménages du premier quintile de la distribution des niveaux de vie (pdf, fr, 119 Ko, 18/02/2013)
- Indice des prix à la consommation (base 100=2015) (pdf, fr, 145 Ko, 29/01/2016)
- Indice des prix à la consommation des ménages - base 100 en 2015 (pdf, fr, 955 Ko, 29/01/2016)
- Pour comprendre l’indice des prix - Édition 1998 (pdf, fr, 1 Mo, 01/01/1999)
- Indice des prix à la consommation des ménages - base 100 en 1998 (pdf, fr, 50 Ko, 01/01/1999)
- Dossier d’information méthodologique. Indice des prix, pouvoir d’achat (pdf, fr, 229 Ko, 01/02/2004)
Documents de travail
- L’IPC, miroir de l’évolution du coût de la vie en France ? - Ce qu’apporte l’analyse des courbes d’Engel. (pdf, fr, 615 Ko, 02/04/2010)
- Calcul d’un indice des prix des produits de grande consommation dans la grande distribution (pdf, fr, 204 Ko, 01/01/2014)
- Ce qui change pour l’IPC à partir du 29 janvier 2016 (pdf, fr, 129 Ko, 29/01/2016)
- L’expérience française des indices de prix a la consommation (pdf, fr, 107 Ko, 01/01/1996) Indice des prix à la consommation CVS et indice hors tarifs publics et produits à prix volatils corrigé des mesures fiscales, CVS (pdf, fr, 71 Ko, 27/03/1996)
- Indices mensuels des prix dans la grande distribution (pdf, fr, 126 Ko, 18/02/2016)
- Contenu des groupes avec les fonctions, les regroupements et les groupes publiés dans la nouvelle base 1998 (pdf, fr, 42 Ko, 01/01/1999)
- Comparaisons spatiales de prix au sein du territoire français (pdf, fr, 91 Ko, 01/12/2000)
- Les indices à utilité constante : une référence pour mesurer l’évolution des prix (pdf, fr, 219 Ko, 01/12/2000)
- La mesure des prix dans les domaines de la santé et de l’action sociale : quelques problèmes méthodologiques (pdf, fr, 212 Ko, 01/06/2003)
- Indice des prix à la consommation en base 100 en 1998 - Séries longues rétropolées, de 1990 à 2002 (pdf, fr, 201 Ko, 01/09/2003)
- Impact des ajustements de qualité dans le calcul de l’indice des prix à la consommation (pdf, fr, 53 Ko, 01/05/2004)
- Introduction à la pratique des indices statistiques (pdf, fr, 426 Ko, 01/11/2005)
- Note additionnelle sur les changements de l’année 2017 (pdf, fr, 228 Ko, 23/02/2017)
TEF 2020
Code
ig_b("insee", "TEF2020", "114-IPC-poids")
INDICATEUR
Code
`IPC-2015` %>%
left_join(INDICATEUR, by = "INDICATEUR") %>%
group_by(INDICATEUR, Indicateur) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
INDICATEUR | Indicateur | Nobs |
---|---|---|
IPC | Indice des prix à la consommation (IPC) | 545627 |
ISJ | Indice d'inflation sous-jacente (ISJ) | 5064 |
PRIX_CONSO
Code
`IPC-2015` %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
group_by(PRIX_CONSO, Prix_conso) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
CORRECTION
Code
`IPC-2015` %>%
left_join(CORRECTION, by = "CORRECTION") %>%
group_by(CORRECTION, Correction) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
CORRECTION | Correction | Nobs |
---|---|---|
BRUT | Non corrigé | 544358 |
CVS-FISC | Corrigé des mesures fiscales et des variations saisonnières | 5064 |
CVS | Corrigé des variations saisonnières | 1269 |
NATURE
Code
`IPC-2015` %>%
left_join(NATURE, by = "NATURE") %>%
group_by(NATURE, Nature) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
NATURE | Nature | Nobs |
---|---|---|
INDICE | Indice | 455692 |
POND | Pondérations d'indice | 45859 |
VARIATIONS_M | Variations mensuelles | 24333 |
GLISSEMENT_ANNUEL | Glissement annuel | 23618 |
VARIATIONS_A | Variations annuelles | 1189 |
FREQ
Code
`IPC-2015` %>%
left_join(FREQ, by = "FREQ") %>%
group_by(FREQ, Freq) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
FREQ | Freq | Nobs |
---|---|---|
M | Monthly | 459586 |
A | Annual | 91105 |
MENAGES_IPC
Code
`IPC-2015` %>%
left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
group_by(MENAGES_IPC, Menages_ipc) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
COICOP2016
All
Code
`IPC-2015` %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016, Coicop2016) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
2-digit
Code
`IPC-2015` %>%
filter(nchar(COICOP2016) == 2) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016, Coicop2016) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
COICOP2016 | Coicop2016 | Nobs |
---|---|---|
SO | Sans objet | 112057 |
00 | 00 - Ensemble | 2811 |
01 | 01 - Produits alimentaires et boissons non alcoolisées | 1464 |
02 | 02 - Boissons alcoolisées, tabac et stupéfiants | 1464 |
03 | 03 - Articles d'habillement et chaussures | 1464 |
04 | 04 - Logement, eau, gaz, électricité et autres combustibles | 1464 |
05 | 05 - Meubles, articles de ménage et entretien courant du foyer | 1464 |
06 | 06 - Santé | 1464 |
07 | 07 - Transports | 1464 |
08 | 08 - Communications | 1464 |
09 | 09 - Loisirs et culture | 1464 |
10 | 10 - Enseignement | 1464 |
11 | 11 - Restaurants et hôtels | 1464 |
12 | 12 - Biens et services divers | 1464 |
3-digit
Code
`IPC-2015` %>%
filter(nchar(COICOP2016) == 3) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016, Coicop2016) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
4-digit
Code
`IPC-2015` %>%
filter(nchar(COICOP2016) == 4) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016, Coicop2016) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
5-digit
Code
`IPC-2015` %>%
filter(nchar(COICOP2016) == 5) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016, Coicop2016) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
6-digit
Code
`IPC-2015` %>%
filter(nchar(COICOP2016) == 6) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016, Coicop2016) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
TITLE_FR
Code
`IPC-2015` %>%
group_by(TITLE_FR, IDBANK) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional
REF_AREA
Code
`IPC-2015` %>%
group_by(REF_AREA) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional
REF_AREA | Nobs |
---|---|
FE | 285095 |
FM | 230136 |
D973 | 8442 |
D971 | 8420 |
D972 | 8420 |
D974 | 8420 |
D976 | 1758 |
TIME_PERIOD
Code
`IPC-2015` %>%
group_by(TIME_PERIOD) %>%
summarise(Nobs = n()) %>%
arrange(desc(TIME_PERIOD)) %>%
print_table_conditional
France Entiere (FE), France Métropolitaine (FM)
Mensuel
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("SO"),
PRIX_CONSO == "M",
FREQ %in% c("00"),
COICOP2016 %in% c("FE", "FM"),
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("1996-01-01")) %>%
arrange(desc(date)) %>%
group_by(REF_AREA) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = REF_AREA)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
Alimentation, loyers, chauffage, Ensemble
Hausse sur 2 ans
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
%in% c("041", "00", "01", "045"),
COICOP2016 == "M",
FREQ == "FM",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
filter(date >= max(date) - years(2)) %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.28, 0.87),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 0.5, hjust=1)) +
scale_y_log10(breaks = seq(100, 130, 2),
labels = paste0(seq(0, 30, 2), "%")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
Par type de ménages
3 déciles
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("D6-D7", "INF-D1", "D9-PLUS")) %>%
left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
%>%
year_to_date group_by(MENAGES_IPC) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Menages_ipc)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.7, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
10 dixièmes
1998-
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("INF-D1", "D1-D2", "D2-D3", "D3-D4", "D4-D5",
"D5-D6", "D6-D7", "D7-D8", "D8-D9", "D9-PLUS")) %>%
left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
%>%
year_to_date group_by(MENAGES_IPC) %>%
mutate(MENAGES_IPC = factor(MENAGES_IPC, levels = c("INF-D1", "D1-D2", "D2-D3", "D3-D4", "D4-D5",
"D5-D6", "D6-D7", "D7-D8", "D8-D9", "D9-PLUS"))) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = MENAGES_IPC)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.7),
legend.title = element_blank()) +
guides(color = guide_legend(ncol = 3)) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
2008-
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("INF-D1", "D1-D2", "D2-D3", "D3-D4", "D4-D5",
"D5-D6", "D6-D7", "D7-D8", "D8-D9", "D9-PLUS")) %>%
left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
%>%
year_to_date group_by(MENAGES_IPC) %>%
mutate(MENAGES_IPC = factor(MENAGES_IPC,
levels = c("INF-D1", "D1-D2", "D2-D3", "D3-D4", "D4-D5",
"D5-D6", "D6-D7", "D7-D8", "D8-D9", "D9-PLUS"))) %>%
arrange(date) %>%
filter(date >= as.Date("2008-01-01")) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = MENAGES_IPC)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.7),
legend.title = element_blank()) +
guides(color = guide_legend(ncol = 3)) +
scale_y_log10(breaks = seq(0, 200, 2),
labels = dollar_format(accuracy = 1, prefix = ""))
1er quintile, Tous
All
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("PREMIERQUINTILE", "ENSEMBLE"),
== "M",
FREQ == "4018",
PRIX_CONSO == "FE",
REF_AREA == "SO",
COICOP2016 == "INDICE") %>%
NATURE left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
%>%
month_to_date + geom_line(aes(x = date, y = OBS_VALUE, color = Menages_ipc)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.7, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
1998-
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("PREMIERQUINTILE", "ENSEMBLE"),
== "M",
FREQ == "4018",
PRIX_CONSO == "FE",
REF_AREA == "SO",
COICOP2016 == "INDICE") %>%
NATURE left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
%>%
month_to_date filter(date >= as.Date("1998-01-01")) %>%
group_by(MENAGES_IPC) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Menages_ipc)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.6, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
2012-
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("PREMIERQUINTILE", "ENSEMBLE"),
== "M",
FREQ == "4018",
PRIX_CONSO == "FE",
REF_AREA == "SO",
COICOP2016 == "INDICE") %>%
NATURE left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
%>%
month_to_date filter(date >= as.Date("2012-01-01")) %>%
group_by(MENAGES_IPC) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Menages_ipc)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.4, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 2),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
Glissement sur 2 ans
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("PREMIERQUINTILE", "ENSEMBLE"),
== "M",
FREQ == "4018",
PRIX_CONSO == "FE",
REF_AREA == "SO",
COICOP2016 == "INDICE") %>%
NATURE left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
%>%
month_to_date filter(date >= as.Date("2021-09-01")) %>%
group_by(MENAGES_IPC) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Menages_ipc)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.65, 0.2),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 0.5, hjust=1)) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)),
fontface ="plain", color = "black", size = 3)
Cadres, Ouvriers, Retraités
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("CADRE", "OUVRIER", "RETRAITE", "ACTIF")) %>%
left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
%>%
year_to_date group_by(MENAGES_IPC) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Menages_ipc)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.7, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
Inflation - Tous
Table - COICOP2016
All
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "INDICE",
NATURE == "SO",
PRIX_CONSO %in% c("1990", "2000", "2010", "2020")) %>%
TIME_PERIOD left_join(COICOP2016, by = "COICOP2016") %>%
select(COICOP2016, Coicop2016, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
mutate(`% 1990-2019` = (100*((`2020`/`1990`)^(1/29)-1)) %>% round(., 2)) %>%
print_table_conditional
2-digit
Javascript
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "INDICE",
NATURE == "SO",
PRIX_CONSO %in% c("1990", "2000", "2010", "2020"),
TIME_PERIOD nchar(COICOP2016) == 2) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
select(COICOP2016, Coicop2016, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
mutate(`% 1990-2019` = (100*((`2020`/`1990`)^(1/29)-1)) %>% round(., 2)) %>%
print_table_conditional()
COICOP2016 | Coicop2016 | 1990 | 2000 | 2010 | 2020 | % 1990-2019 |
---|---|---|---|---|---|---|
00 | 00 - Ensemble | 67.4 | 79.9 | 94.71 | 104.73 | 1.53 |
01 | 01 - Produits alimentaires et boissons non alcoolisées | 68.7 | 77.6 | 94.63 | 108.33 | 1.58 |
02 | 02 - Boissons alcoolisées, tabac et stupéfiants | 34.9 | 55.2 | 83.63 | 126.07 | 4.53 |
03 | 03 - Articles d'habillement et chaussures | 85.7 | 93.2 | 97.60 | 99.71 | 0.52 |
04 | 04 - Logement, eau, gaz, électricité et autres combustibles | 53.6 | 66.9 | 88.46 | 105.24 | 2.35 |
05 | 05 - Meubles, articles de ménage et entretien courant du foyer | 74.6 | 85.1 | 96.11 | 100.67 | 1.04 |
06 | 06 - Santé | 92.9 | 101.9 | 104.31 | 96.67 | 0.14 |
07 | 07 - Transports | 58.6 | 74.4 | 93.57 | 105.24 | 2.04 |
08 | 08 - Communications | 158.4 | 142.1 | 124.87 | 91.96 | -1.86 |
09 | 09 - Loisirs et culture | 101.5 | 109.2 | 101.30 | 103.29 | 0.06 |
10 | 10 - Enseignement | 55.3 | 70.0 | 92.09 | 107.42 | 2.32 |
11 | 11 - Restaurants et hôtels | 53.3 | 69.9 | 89.63 | 108.04 | 2.47 |
12 | 12 - Biens et services divers | 60.8 | 71.7 | 91.54 | 105.68 | 1.92 |
png
Code
i_g("bib/insee/IPC-2015_2digit.png")
3-digit
Javascript
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "INDICE",
NATURE == "SO",
PRIX_CONSO %in% c("1990", "2000", "2010", "2020"),
TIME_PERIOD nchar(COICOP2016) == 3) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
select(COICOP2016, Coicop2016, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
mutate(`% 1990-2019` = (100*((`2020`/`1990`)^(1/29)-1)) %>% round(., 2)) %>%
print_table_conditional()
png
Code
i_g("bib/insee/IPC-2015_3digit-0.png")
Code
i_g("bib/insee/IPC-2015_3digit-1.png")
4-digit
Javascript
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "INDICE",
NATURE == "SO",
PRIX_CONSO %in% c("1990", "2000", "2010", "2020"),
TIME_PERIOD nchar(COICOP2016) == 4) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
select(COICOP2016, Coicop2016, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
mutate(`% 1990-2019` = (100*((`2020`/`1990`)^(1/29)-1)) %>% round(., 2)) %>%
print_table_conditional()
png
Code
i_g("bib/insee/IPC-2015_4digit-0.png")
Code
i_g("bib/insee/IPC-2015_4digit-1.png")
Code
i_g("bib/insee/IPC-2015_4digit-2.png")
Code
i_g("bib/insee/IPC-2015_4digit-3.png")
5-digit
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "INDICE",
NATURE == "SO",
PRIX_CONSO %in% c("1990", "2000", "2010", "2020"),
TIME_PERIOD nchar(COICOP2016) == 5) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
select(COICOP2016, Coicop2016, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
mutate(`% 1990-2019` = (100*((`2020`/`1990`)^(1/29)-1)) %>% round(., 2)) %>%
print_table_conditional()
6-digit
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "INDICE",
NATURE == "SO",
PRIX_CONSO %in% c("1990", "2000", "2010", "2020"),
TIME_PERIOD nchar(COICOP2016) == 6) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
select(COICOP2016, Coicop2016, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
mutate(`% 1990-2019` = (100*((`2020`/`1990`)^(1/29)-1)) %>% round(., 2)) %>%
print_table_conditional()
Table - PRIX_CONSO
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "INDICE",
NATURE == "SO",
COICOP2016 %in% c("1990", "2000", "2010", "2020")) %>%
TIME_PERIOD left_join(COICOP2016, by = "COICOP2016") %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
select(PRIX_CONSO, Prix_conso, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
print_table_conditional
PRIX_CONSO | Prix_conso | 1990 | 2000 | 2010 | 2020 |
---|---|---|---|---|---|
4000 | Alimentation | NA | NA | 94.14 | 108.10 |
4001 | Produits frais | NA | NA | 91.27 | 126.16 |
4002 | Autres produits alimentaires | NA | NA | 94.57 | 105.27 |
4003 | Produits manufacturés | NA | NA | 101.42 | 97.95 |
4004 | Habillement, chaussures | NA | NA | 97.80 | 99.42 |
4005 | Produits de santé | NA | NA | 114.95 | 88.35 |
4006 | Autres produits manufacturés | NA | NA | 99.31 | 99.98 |
4007 | Énergie | NA | NA | 88.98 | 108.34 |
4008 | Produits pétroliers | NA | NA | 97.83 | 106.18 |
4009 | Services | NA | NA | 92.90 | 105.22 |
4010 | Services : Loyers, eau et enlèvement des ordures ménagères | NA | NA | 92.41 | 101.88 |
4011 | Services : Services de santé | NA | NA | 96.55 | 102.75 |
4012 | Services : Transports et communications | NA | NA | 106.69 | 98.90 |
4013 | Autres services | NA | NA | 89.91 | 107.75 |
4014 | Alimentation, y compris tabac | NA | NA | 92.35 | 111.91 |
4015 | Produits manufacturés, y compris énergie | NA | NA | 98.65 | 100.37 |
4016 | Produits manufacturés, y compris services liés, hors habillement et chaussures | NA | NA | 102.07 | NA |
4017 | Ensemble hors énergie | NA | NA | 95.24 | 104.42 |
4018 | Ensemble hors tabac | NA | NA | 95.06 | 103.98 |
4023 | Ensemble hors tabac et alcool | NA | NA | 95.16 | 103.94 |
4024 | Ensemble non alimentaire, y compris tabac | NA | NA | 94.82 | 104.09 |
4025 | Ensemble hors produits frais | NA | NA | 94.80 | 104.26 |
4026 | Alimentation, y compris restaurants, cantines, cafés | NA | NA | 92.97 | 107.88 |
4037 | Biens durables | NA | NA | 102.00 | 99.95 |
4038 | Produits manufacturés, hors habillement, biens durables et produits de santé | NA | NA | 96.65 | 100.09 |
4566 | Services : Transports, communications, hôtellerie | NA | NA | 95.54 | 104.09 |
4600 | Ensemble hors loyers et hors tabac | NA | NA | 95.12 | 104.18 |
5272 | Services : Transports | 60.7 | 76.6 | 93.18 | 100.27 |
5273 | Services : Communications | 144.8 | 131.4 | 121.85 | 97.39 |
5329 | Produits manufacturés, hors habillement et chaussures | NA | NA | NA | 97.54 |
Inflation par catégorie
Tabac, Loyers, Ensemble, Carburants
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "045", "022", "0722"),
== "INDICE",
NATURE == "FE",
REF_AREA == "M",
FREQ is.na(MENAGES_IPC) | MENAGES_IPC == "ENSEMBLE",
is.na(PRIX_CONSO) | PRIX_CONSO == "SO") %>%
%>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = OBS_VALUE/lag(OBS_VALUE, 12)-1) %>%
filter(date >= max(date) - years(2)) %>%
select(date, OBS_VALUE, Coicop2016) %>%
%>%
na.omit ggplot() + ylab("Inflation sur un an (IPC, IPCH)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.72, 0.9),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_continuous(breaks = 0.01*seq(-100, 300, 5),
labels = percent_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = percent(OBS_VALUE, acc = 0.1)),
fontface ="plain", color = "black", size = 3)
Tabac, Loyers, Ensemble
Glissement 1 an
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "01", "022"),
== "INDICE",
NATURE == "FE",
REF_AREA == "M",
FREQ is.na(MENAGES_IPC) | MENAGES_IPC == "ENSEMBLE",
is.na(PRIX_CONSO) | PRIX_CONSO == "SO") %>%
%>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = OBS_VALUE/lag(OBS_VALUE, 12)-1) %>%
filter(date >= max(date) - years(2)) %>%
select(date, OBS_VALUE, Coicop2016) %>%
%>%
na.omit ggplot() + ylab("Inflation sur un an (IPC, IPCH)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.3, 0.9),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_continuous(breaks = 0.01*seq(-100, 300, 1),
labels = percent_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = percent(OBS_VALUE, acc = 0.1)),
fontface ="plain", color = "black", size = 3)
Glissement 2 ans
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "01", "022"),
== "INDICE",
NATURE == "FE",
REF_AREA == "M",
FREQ is.na(MENAGES_IPC) | MENAGES_IPC == "ENSEMBLE",
is.na(PRIX_CONSO) | PRIX_CONSO == "SO") %>%
%>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = OBS_VALUE/lag(OBS_VALUE, 24)-1) %>%
filter(date >= max(date) - years(2)) %>%
select(date, OBS_VALUE, Coicop2016) %>%
%>%
na.omit ggplot() + ylab("Glissement sur 2 ans (IPC, IPCH)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.3, 0.9),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_continuous(breaks = 0.01*seq(-100, 300, 1),
labels = percent_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = percent(OBS_VALUE, acc = 0.1)),
fontface ="plain", color = "black", size = 3)
Alimentation, Loyers, Ensemble
Glissement 1 an
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "01", "041"),
== "INDICE",
NATURE == "FE",
REF_AREA == "M",
FREQ is.na(MENAGES_IPC) | MENAGES_IPC == "ENSEMBLE",
is.na(PRIX_CONSO) | PRIX_CONSO == "SO") %>%
%>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = OBS_VALUE/lag(OBS_VALUE, 12)-1) %>%
filter(date >= max(date) - years(2)) %>%
select(date, OBS_VALUE, Coicop2016) %>%
%>%
na.omit ggplot() + ylab("Glissement sur 1 an (IPC, IPCH)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.3, 0.9),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_continuous(breaks = 0.01*seq(-100, 300, 1),
labels = percent_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = percent(OBS_VALUE, acc = 0.1)),
fontface ="plain", color = "black", size = 3)
Glissement 2 ans
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "01", "041"),
== "INDICE",
NATURE == "FE",
REF_AREA == "M",
FREQ is.na(MENAGES_IPC) | MENAGES_IPC == "ENSEMBLE",
is.na(PRIX_CONSO) | PRIX_CONSO == "SO") %>%
%>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = OBS_VALUE/lag(OBS_VALUE, 24)-1) %>%
filter(date >= max(date) - years(2)) %>%
select(date, OBS_VALUE, Coicop2016) %>%
%>%
na.omit ggplot() + ylab("Glissement sur 2 ans (IPC, IPCH)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.3, 0.9),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_continuous(breaks = 0.01*seq(-100, 300, 1),
labels = percent_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = percent(OBS_VALUE, acc = 0.1)),
fontface ="plain", color = "black", size = 3)
Chauffage du logement, Loyers, Ensemble
Glissement 1 an
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "041", "045"),
== "INDICE",
NATURE == "FE",
REF_AREA == "M",
FREQ is.na(MENAGES_IPC) | MENAGES_IPC == "ENSEMBLE",
is.na(PRIX_CONSO) | PRIX_CONSO == "SO") %>%
%>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = OBS_VALUE/lag(OBS_VALUE, 12)-1) %>%
filter(date >= max(date) - years(2)) %>%
select(date, OBS_VALUE, Coicop2016) %>%
%>%
na.omit ggplot() + ylab("Inflation sur un an (IPC, IPCH)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.4, 0.45),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_continuous(breaks = 0.01*seq(-100, 300, 2),
labels = percent_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = percent(OBS_VALUE, acc = 0.1)),
fontface ="plain", color = "black", size = 3)
Glissement 2 ans
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "041", "045"),
== "INDICE",
NATURE == "FE",
REF_AREA == "M",
FREQ is.na(MENAGES_IPC) | MENAGES_IPC == "ENSEMBLE",
is.na(PRIX_CONSO) | PRIX_CONSO == "SO") %>%
%>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = OBS_VALUE/lag(OBS_VALUE, 24)-1) %>%
filter(date >= max(date) - years(2)) %>%
select(date, OBS_VALUE, Coicop2016) %>%
%>%
na.omit ggplot() + ylab("Glissement sur 2 ans (IPC, IPCH)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.4, 0.45),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_continuous(breaks = 0.01*seq(-100, 300, 2),
labels = percent_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = percent(OBS_VALUE, acc = 0.1)),
fontface ="plain", color = "black", size = 3)
Pondérations d’indice
Table - COICOP2016
All
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "POND",
NATURE == "SO",
PRIX_CONSO == "BRUT",
CORRECTION %in% c("1990", "2000", "2010", "2020")) %>%
TIME_PERIOD left_join(COICOP2016, by = "COICOP2016") %>%
select(COICOP2016, Coicop2016, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
print_table_conditional
2-digit
Javascript
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "POND",
NATURE == "SO",
PRIX_CONSO %in% c("1990", "2000", "2010", "2020"),
TIME_PERIOD nchar(COICOP2016) == 2) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
select(COICOP2016, Coicop2016, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
print_table_conditional
COICOP2016 | Coicop2016 | 1990 | 2000 | 2010 | 2020 |
---|---|---|---|---|---|
00 | 00 - Ensemble | 10000 | 10000 | 10000 | 10000 |
01 | 01 - Produits alimentaires et boissons non alcoolisées | 1999 | 1558 | 1474 | 1423 |
02 | 02 - Boissons alcoolisées, tabac et stupéfiants | 378 | 382 | 329 | 392 |
03 | 03 - Articles d'habillement et chaussures | 844 | 552 | 487 | 394 |
04 | 04 - Logement, eau, gaz, électricité et autres combustibles | 1233 | 1364 | 1348 | 1399 |
05 | 05 - Meubles, articles de ménage et entretien courant du foyer | 736 | 644 | 617 | 495 |
06 | 06 - Santé | 774 | 896 | 1005 | 1050 |
07 | 07 - Transports | 1659 | 1669 | 1634 | 1581 |
08 | 08 - Communications | 188 | 254 | 303 | 248 |
09 | 09 - Loisirs et culture | 851 | 859 | 916 | 854 |
10 | 10 - Enseignement | 33 | 23 | 25 | 5 |
11 | 11 - Restaurants et hôtels | 818 | 805 | 685 | 810 |
12 | 12 - Biens et services divers | 487 | 994 | 1177 | 1349 |
png
Code
i_g("bib/insee/IPC-2015_2digit_weights.png")
3-digit
Javascript
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "POND",
NATURE == "SO",
PRIX_CONSO == "BRUT",
CORRECTION %in% c("1990", "2000", "2010", "2020"),
TIME_PERIOD nchar(COICOP2016) == 3) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
select(COICOP2016, Coicop2016, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
print_table_conditional
png
Code
i_g("bib/insee/IPC-2015_3digit_weights-0.png")
Code
i_g("bib/insee/IPC-2015_3digit_weights-1.png")
4-digit
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "POND",
NATURE == "SO",
PRIX_CONSO == "BRUT",
CORRECTION %in% c("1990", "2000", "2010", "2020"),
TIME_PERIOD nchar(COICOP2016) == 4) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
select(COICOP2016, Coicop2016, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
print_table_conditional
5-digit
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "POND",
NATURE == "SO",
PRIX_CONSO == "BRUT",
CORRECTION %in% c("1990", "2000", "2010", "2020"),
TIME_PERIOD nchar(COICOP2016) == 5) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
select(COICOP2016, Coicop2016, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
print_table_conditional
Table - PRIX_CONSO
1990, 2000, 2010, 2020
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "POND",
NATURE == "BRUT",
CORRECTION == "SO",
COICOP2016 %in% c("1990", "2000", "2010", "2020")) %>%
TIME_PERIOD left_join(COICOP2016, by = "COICOP2016") %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
select(PRIX_CONSO, Prix_conso, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
print_table_conditional
2016, 2017, 2018, 2019, 2020
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "FE",
REF_AREA == "POND",
NATURE == "BRUT",
CORRECTION == "SO",
COICOP2016 %in% c("2016", "2017", "2018", "2019", "2020")) %>%
TIME_PERIOD left_join(COICOP2016, by = "COICOP2016") %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
select(PRIX_CONSO, Prix_conso, TIME_PERIOD, OBS_VALUE) %>%
spread(TIME_PERIOD, OBS_VALUE) %>%
print_table_conditional()
PRIX_CONSO | Prix_conso | 2016 | 2017 | 2018 | 2019 | 2020 |
---|---|---|---|---|---|---|
4000 | Alimentation | 1615 | 1627 | 1627 | 1619 | 1610 |
4001 | Produits frais | 217 | 235 | 243 | 244 | 230 |
4002 | Autres produits alimentaires | 1398 | 1392 | 1384 | 1375 | 1380 |
4003 | Produits manufacturés | 2651 | 2617 | 2594 | 2556 | 2491 |
4004 | Habillement, chaussures | 414 | 433 | 416 | 400 | 380 |
4005 | Produits de santé | 466 | 433 | 425 | 416 | 412 |
4006 | Autres produits manufacturés | 1771 | 1751 | 1753 | 1740 | 1699 |
4007 | Énergie | 773 | 748 | 777 | 804 | 808 |
4008 | Produits pétroliers | 419 | 378 | 408 | 425 | 439 |
4009 | Services | 4766 | 4820 | 4809 | 4830 | 4886 |
4010 | Services : Loyers, eau et enlèvement des ordures ménagères | 768 | 779 | 764 | 746 | 752 |
4011 | Services : Services de santé | 598 | 600 | 617 | 604 | 604 |
4012 | Services : Transports et communications | 524 | 524 | 505 | 504 | 515 |
4013 | Autres services | 2876 | 2917 | 2923 | 2976 | 3015 |
4014 | Alimentation, y compris tabac | 1810 | 1815 | 1820 | 1810 | 1815 |
4015 | Produits manufacturés, y compris énergie | 3434 | 3375 | 3382 | 3371 | 3311 |
4016 | Produits manufacturés, y compris services liés, hors habillement et chaussures | 2247 | 2194 | 2189 | 2167 | 2123 |
4017 | Ensemble hors énergie | 9227 | 9252 | 9223 | 9196 | 9192 |
4018 | Ensemble hors tabac | 9805 | 9812 | 9807 | 9809 | 9795 |
4024 | Ensemble non alimentaire, y compris tabac | 8385 | 8373 | 8373 | 8381 | 8390 |
4025 | Ensemble hors produits frais | 9798 | 9785 | 9776 | 9777 | 9790 |
4026 | Alimentation, y compris restaurants, cantines, cafés | 2185 | 2214 | 2229 | 2238 | 2239 |
4034 | Tabac | 195 | 188 | 193 | 191 | 205 |
4037 | Biens durables | 745 | 739 | 753 | 755 | 730 |
4038 | Produits manufacturés, hors habillement, biens durables et produits de santé | 1033 | 1019 | 1005 | 990 | 975 |
4566 | Services : Transports, communications, hôtellerie | 2304 | 2289 | 2359 | 2403 | 2440 |
4600 | Ensemble hors loyers et hors tabac | 9183 | 9183 | 9192 | 9208 | 9185 |
5272 | Services : Transports | 279 | 282 | 282 | 285 | 300 |
5273 | Services : Communications | 245 | 242 | 223 | 219 | 215 |
5329 | Produits manufacturés, hors habillement et chaussures | 2237 | 2184 | 2178 | 2156 | 2111 |
Alimentation, Produits alimentaires
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("01", "011"),
COICOP2016 == "FE",
REF_AREA == "POND") %>%
NATURE %>%
year_to_date left_join(COICOP2016, by = "COICOP2016") %>%
mutate(OBS_VALUE = OBS_VALUE/10000) %>%
ggplot() + ylab("Poids de l'alimentation dans l'indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.65, 0.9),
legend.title = element_blank()) +
scale_y_continuous(breaks = 0.01*seq(0, 40, 0.5),
labels = percent_format(accuracy = .1))
Tabac
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("022"),
COICOP2016 == "FE",
REF_AREA == "POND") %>%
NATURE %>%
year_to_date left_join(COICOP2016, by = "COICOP2016") %>%
mutate(OBS_VALUE = OBS_VALUE/10000) %>%
ggplot() + ylab("Poids du tabac dans l'indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(0, 10, 0.1),
labels = percent_format(accuracy = .1))
1253 - Assurance Santé Complémentaire
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("1253"),
COICOP2016 == "FE",
REF_AREA == "POND") %>%
NATURE %>%
year_to_date left_join(COICOP2016, by = "COICOP2016") %>%
mutate(OBS_VALUE = OBS_VALUE/10000) %>%
ggplot() + ylab("Poids de l'assurance santé dans l'indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.15, 0.9),
legend.title = element_blank()) +
scale_y_continuous(breaks = 0.01*seq(0, 10, 0.1),
labels = percent_format(accuracy = .1))
Santé
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("06"),
COICOP2016 == "FE",
REF_AREA == "POND") %>%
NATURE %>%
year_to_date left_join(COICOP2016, by = "COICOP2016") %>%
mutate(OBS_VALUE = OBS_VALUE/10000) %>%
ggplot() + ylab("Poids de la santé dans l'indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(0, 20, 0.5),
labels = percent_format(accuracy = .1))
Santé, Assurance santé complémentaire
All
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("06", "1253"),
COICOP2016 == "FE",
REF_AREA == "POND") %>%
NATURE %>%
year_to_date left_join(COICOP2016, by = "COICOP2016") %>%
mutate(OBS_VALUE = OBS_VALUE/10000) %>%
ggplot() + ylab("Poids de la santé dans l'indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_color_manual(values = viridis(2)[1:2]) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.15, 0.9),
legend.title = element_blank()) +
scale_y_continuous(breaks = 0.01*seq(0, 20, 0.5),
labels = percent_format(accuracy = .1))
1996-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("06", "1253"),
COICOP2016 == "FE",
REF_AREA == "POND") %>%
NATURE %>%
year_to_date filter(date >= as.Date("1996-01-01")) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
mutate(OBS_VALUE = OBS_VALUE/10000) %>%
ggplot() + ylab("Poids de la santé dans l'indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_color_manual(values = viridis(2)[1:2]) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.15, 0.9),
legend.title = element_blank()) +
scale_y_continuous(breaks = 0.01*seq(0, 20, 0.5),
labels = percent_format(accuracy = .1))
Santé
Santé, Assurance Santé vs. Ensemble
1990-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "SO",
PRIX_CONSO %in% c("06", "1253", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.15, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = c(100, 164, 200, 400, 816, seq(100, 180, 10)),
labels = dollar_format(accuracy = 1, prefix = ""))
1996-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "SO",
PRIX_CONSO %in% c("06", "1253", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("1996-01-01")) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix, IPC") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.15, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = c(100, 164, 200, 400, 816, seq(100, 180, 10)),
labels = dollar_format(accuracy = 1, prefix = ""))
Péages
Péages vs. Ensemble
1990-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "SO",
PRIX_CONSO %in% c("07242", "0724", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(100, 400, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
1996-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "SO",
PRIX_CONSO %in% c("07242", "0724", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
filter(date >= as.Date("1996-01-01")) %>%
group_by(Coicop2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(100, 400, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
Pondération des péages, services divers dans l’IPC
1990-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("07242", "0724"),
COICOP2016 == "FE",
REF_AREA == "POND") %>%
NATURE %>%
year_to_date left_join(COICOP2016, by = "COICOP2016") %>%
mutate(OBS_VALUE = OBS_VALUE/10000) %>%
ggplot() + ylab("Poids des péages dans l'indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
theme(legend.position = c(0.35, 0.9),
legend.title = element_blank()) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(0, 10, 0.1),
labels = percent_format(accuracy = .1),
limits = c(0, 0.016))
1996-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("07242", "0724"),
COICOP2016 == "FE",
REF_AREA == "POND") %>%
NATURE %>%
year_to_date left_join(COICOP2016, by = "COICOP2016") %>%
mutate(OBS_VALUE = OBS_VALUE/10000) %>%
filter(date >= as.Date("1996-01-01")) %>%
ggplot() + ylab("Poids des péages dans l'indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
theme(legend.position = c(0.35, 0.9),
legend.title = element_blank()) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(0, 10, 0.1),
labels = percent_format(accuracy = .1),
limits = c(0, 0.016))
Services à domicile
Services à domicile vs. Ensemble
1998-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "SO",
PRIX_CONSO %in% c("05621", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("1998-01-01")) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(100, 200, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
Tabac
Tabac vs. Ensemble
1990-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC == "SO",
PRIX_CONSO %in% c("022", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date arrange(date) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.15, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = c(100, 164, 200, 400, 600, 800, 1000),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
1992-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("022", "00"),
COICOP2016 == "M",
FREQ == "SO",
PRIX_CONSO == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("1992-01-01")) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = c(100, 164, 200, 400, 816),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
1996-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("022", "00"),
COICOP2016 == "M",
FREQ == "SO",
PRIX_CONSO == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("1996-01-01")) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(100, 1000, 100),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
2000-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("022", "00"),
COICOP2016 == "M",
FREQ == "SO",
PRIX_CONSO == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("2000-01-01")) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = c(seq(0, 100, 20), seq(0, 1000, 50)),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
2012-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("022", "00"),
COICOP2016 == "M",
FREQ == "SO",
PRIX_CONSO == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("2012-01-01")) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = c(seq(0, 100, 10), seq(0, 1000, 10)),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
Ensemble avec Tabac (IdBank: 001763852, 001759970)
1990-
Code
`IPC-2015` %>%
filter(IDBANK %in% c("001759970", "001763852")) %>%
%>%
month_to_date arrange(date) %>%
filter(date >= as.Date("1990-01-01")) %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
group_by(Prix_conso) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
1992-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("4035", "4018", "00"),
PRIX_CONSO == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("1992-01-01")) %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
group_by(Prix_conso) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
1996-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("4035", "4018", "00"),
PRIX_CONSO == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("1996-01-01")) %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
group_by(Prix_conso) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
2000-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("4035", "4018", "00"),
PRIX_CONSO == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("2000-01-01")) %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
group_by(Prix_conso) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
2012-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("4035", "4018", "00"),
PRIX_CONSO == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("2012-01-01")) %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
group_by(Prix_conso) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
2017-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("4035", "4018", "00"),
PRIX_CONSO == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= as.Date("2017-01-01")) %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
group_by(Prix_conso) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
scale_x_date(breaks = seq(1920, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
Glissement sur 3 ans
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("4035", "4018"),
PRIX_CONSO == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
%>%
month_to_date filter(date >= max(date) - years(3)) %>%
group_by(Prix_conso) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.65, 0.2),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 0.5, hjust=1)) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)),
fontface ="plain", color = "black", size = 3)
Glissement sur 2 ans
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("4035", "4018", "00"),
PRIX_CONSO == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
%>%
month_to_date filter(date >= max(date) - years(2)) %>%
group_by(Prix_conso) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.65, 0.2),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 0.5, hjust=1)) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)),
fontface ="plain", color = "black", size = 3)
Glissement sur 1 an
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("4035", "4018", "00"),
PRIX_CONSO == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
%>%
month_to_date filter(date >= max(date) - years(1)) %>%
group_by(Prix_conso) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.65, 0.2),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 0.5, hjust=1)) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)),
fontface ="plain", color = "black", size = 3)
Immobilier
4003, 4009, 4034
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("4003", "4009", "4034"),
PRIX_CONSO == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso, linetype = Prix_conso)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
041, 043, 044
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("041", "043", "044"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE",
NATURE #OBS_STATUS == "A"
%>%
) %>%
month_to_date left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
left_join(COICOP2016, by = "COICOP2016") %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.6, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
041 Loyers effectifs, 00 Ensemble
1990-
All
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("041", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016, Prix_conso) %>%
filter(date >= as.Date("1990-01-01")) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[date == as.Date("1990-01-01")]) %>%
mutate(Variable = paste0(Coicop2016, " - ", Prix_conso),
Variable = gsub(" - Sans objet", "", Variable)) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Variable)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.7, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
Loyers, Loyers Réels, IPC
Code
`IPC-2015-2020` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("041", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE",
NATURE #OBS_STATUS == "A"
%>%
) #select(-OBS_VALUE, - TIME_PERIOD) %>%
#distinct
%>%
month_to_date select(date, COICOP2016, OBS_VALUE) %>%
spread(COICOP2016, OBS_VALUE) %>%
mutate(`real_rents` = `041`/`00`) %>%
gather(COICOP2016, OBS_VALUE, -date) %>%
left_join(tibble(COICOP2016 = c("041", "00", "real_rents"),
Coicop2016 = c("Loyers", "IPC", "Loyers Réels")),
by = "COICOP2016") %>%
group_by(COICOP2016) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[date == as.Date("1990-01-01")]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
1992-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("041", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016, Prix_conso) %>%
filter(date >= as.Date("1992-01-01")) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[date == as.Date("1992-01-01")]) %>%
mutate(Variable = paste0(Coicop2016, " - ", Prix_conso),
Variable = gsub(" - Sans objet", "", Variable)) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Variable)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.7, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
1992- (fictifs)
- Blog Loyers. Lien
Code
`IPC-2015-2020` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("041", "00", "4035"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE",
NATURE #OBS_STATUS == "A"
%>%
) #select(-OBS_VALUE, - TIME_PERIOD) %>%
#distinct
%>%
month_to_date left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016) %>%
filter(date >= as.Date("1990-01-01")) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[date == as.Date("1992-01-01")]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2022, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
1990-
Code
`IPC-2015-2020` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("041", "00", "4035"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE",
NATURE #OBS_STATUS == "A"
%>%
) #select(-OBS_VALUE, - TIME_PERIOD) %>%
#distinct
%>%
month_to_date left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016) %>%
filter(date >= as.Date("1990-01-01")) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[date == as.Date("1990-01-01")]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_color_manual(values = viridis(3)[1:2]) +
scale_x_date(breaks = seq(1920, 2022, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
1996-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("041", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016, Prix_conso) %>%
filter(date >= as.Date("1996-01-01")) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[date == as.Date("1996-01-01")]) %>%
mutate(Variable = paste0(Coicop2016, " - ", Prix_conso),
Variable = gsub(" - Sans objet", "", Variable)) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Variable)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.7, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
1990-1999
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("041", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016, Prix_conso) %>%
filter(date >= as.Date("1990-01-01"),
<= as.Date("1999-01-01")) %>%
date mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[date == as.Date("1990-01-01")]) %>%
mutate(Variable = paste0(Coicop2016, " - ", Prix_conso),
Variable = gsub(" - Sans objet", "", Variable)) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Variable)) +
scale_x_date(breaks = seq(1920, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
1999-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("041", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016, Prix_conso) %>%
filter(date >= as.Date("1999-01-01")) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[date == as.Date("1999-01-01")]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = paste0(Coicop2016, " - ", Prix_conso))) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.7, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
2000-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("041", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(Coicop2016, Prix_conso) %>%
filter(date >= as.Date("2000-01-01")) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[date == as.Date("2000-01-01")]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = paste0(Coicop2016, " - ", Prix_conso))) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.7, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
Glissement sur 2 ans
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "ENSEMBLE",
MENAGES_IPC %in% c("041", "00"),
COICOP2016 == "M",
FREQ == "FE",
REF_AREA == "INDICE") %>%
NATURE %>%
month_to_date filter(date >= max(date) - years(2)) %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = paste0(Coicop2016, " - ", Prix_conso))) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.28, 0.87),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 0.5, hjust=1)) +
scale_y_log10(breaks = seq(0, 200, 2),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)),
fontface ="plain", color = "black", size = 3)
Insee calcule y compris loyers fictifs
1990-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "FE",
REF_AREA %in% c("00", "4035"),
PRIX_CONSO #PRIX_CONSO %in% c("00"),
== "INDICE",
NATURE == "M") %>%
FREQ %>%
month_to_date group_by(PRIX_CONSO) %>%
mutate(OBS_VALUE = 100*OBS_VALUE / OBS_VALUE[date == as.Date("1990-01-01")]) %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
1992-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "FE",
REF_AREA %in% c("00", "4035"),
PRIX_CONSO #PRIX_CONSO %in% c("00"),
== "INDICE",
NATURE == "M") %>%
FREQ %>%
month_to_date group_by(PRIX_CONSO) %>%
mutate(OBS_VALUE = 100*OBS_VALUE / OBS_VALUE[date == as.Date("1992-01-01")]) %>%
filter(date >= as.Date("1992-01-01")) %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
1995-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "FE",
REF_AREA %in% c("00", "4035"),
PRIX_CONSO #PRIX_CONSO %in% c("00"),
== "INDICE",
NATURE == "M") %>%
FREQ %>%
month_to_date filter(date >= as.Date("1995-01-01")) %>%
group_by(PRIX_CONSO) %>%
mutate(OBS_VALUE = 100*OBS_VALUE / OBS_VALUE[date == as.Date("1995-01-01")]) %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
2008-
Code
`IPC-2015` %>%
filter(INDICATEUR == "IPC",
== "FE",
REF_AREA %in% c("00", "4035"),
PRIX_CONSO #PRIX_CONSO %in% c("00"),
== "INDICE",
NATURE == "M") %>%
FREQ %>%
month_to_date group_by(PRIX_CONSO) %>%
mutate(OBS_VALUE = 100*OBS_VALUE / OBS_VALUE[date == as.Date("2008-01-01")]) %>%
filter(date >= as.Date("2008-01-01")) %>%
left_join(PRIX_CONSO, by = "PRIX_CONSO") %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Prix_conso)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 2),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
Categories
Par Deciles - INF-D1, D5-D6, D9-PLUS
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("INF-D1", "D5-D6", "D9-PLUS")) %>%
%>%
year_to_date left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
group_by(MENAGES_IPC) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Menages_ipc)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
Par CSP - Actif, Retraité, Cadre, Ouvrier
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("ACTIF", "RETRAITE", "CADRE", "OUVRIER")) %>%
%>%
year_to_date left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
group_by(MENAGES_IPC) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Menages_ipc)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(data = . %>%
filter(date == max(date)), aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)), size = 3)
Par Age - 30-44, 45-59, 60-74
All
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("MOINS-29", "30-44", "45-59", "60-74", "PLUS-75")) %>%
%>%
year_to_date left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
group_by(MENAGES_IPC) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Menages_ipc)) +
scale_color_manual(values = viridis(6)[1:5]) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
2008-
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("MOINS-29", "ENSEMBLE", "45-59", "PLUS-75"),
== "IPC",
INDICATEUR == "4035",
PRIX_CONSO == "INDICE",
NATURE == "FM",
REF_AREA == "A",
FREQ == "SO") %>%
COICOP2016 %>%
year_to_date group_by(MENAGES_IPC) %>%
mutate(OBS_VALUE = 100*OBS_VALUE / OBS_VALUE[date == as.Date("2008-01-01")]) %>%
filter(date >= as.Date("2008-01-01")) %>%
left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Menages_ipc)) +
scale_x_date(breaks = seq(1920, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = dollar_format(accuracy = 1, prefix = ""))
Locataire VS Propriétaire VS Accédant
Code
`IPC-2015` %>%
filter(MENAGES_IPC %in% c("ACCES-PROPRIETE", "LOCATAIRE", "PROPRIETAIRE")) %>%
%>%
year_to_date left_join(MENAGES_IPC, by = "MENAGES_IPC") %>%
group_by(MENAGES_IPC) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Menages_ipc, linetype = Menages_ipc)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
Cantines
1990-
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "1112"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
filter(date >= as.Date("1990-01-01")) %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
2000-
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "1112"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
filter(date >= as.Date("2000-01-01")) %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
2010-
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "1112"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
filter(date >= as.Date("2010-01-01")) %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
Scolaire, Universitaire VS Entreprise ou Admin.
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("111202", "111201"),
== "INDICE") %>%
NATURE %>%
year_to_date arrange(desc(date)) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
Assurance santé
1990-
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "12532", "1253"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
filter(date >= as.Date("1990-01-01")) %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
2000-
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "12532", "1253"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
filter(date >= as.Date("2000-01-01")) %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
2010-
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "12532"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
filter(date >= as.Date("2010-01-01")) %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.9),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = ""))
2-digit
Boissons Alcoolisées, Logement, Restaurants et hôtels
All
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "02", "11", "04"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = c(100, 120, 150, 200, 220, 250, 300, 400, 500),
labels = dollar_format(accuracy = 1, prefix = ""))
Glissement sur 2 ans
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "02", "11", "04"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date filter(date >= max(date) - years(2)) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.28, 0.87),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 0.5, hjust=1)) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)),
fontface ="plain", color = "black", size = 3)
Transports, Enseignement, B&S Divers
Tous
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "10", "07", "12"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(100, 300, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
Glissement sur 2 ans
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "10", "07", "12"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date filter(date >= max(date) - years(2)) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.18, 0.87),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 0.5, hjust=1)) +
scale_y_log10(breaks = seq(0, 200, 2),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)),
fontface ="plain", color = "black", size = 3)
Alimentation, Habillement, Meubles
Tous
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "05", "01", "03"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(100, 300, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
Glissement sur 2 ans
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "05", "01", "03"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date filter(date >= max(date) - years(2)) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.28, 0.87),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 0.5, hjust=1)) +
scale_y_log10(breaks = seq(0, 200, 2),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)),
fontface ="plain", color = "black", size = 3)
Santé, Communications, Loisirs
Tous
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "06", "09", "08"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.2, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(10, 300, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
1996-
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "06", "09", "08"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date filter(date >= as.Date("1996-01-01")) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.2, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(10, 300, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
2000-
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "06", "09", "08"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date filter(date >= as.Date("2000-01-01")) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des prix") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.18, 0.22),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(10, 300, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
Glissement sur 2 ans
Code
`IPC-2015` %>%
filter(COICOP2016 %in% c("00", "06", "09", "08"),
== "FM",
REF_AREA == "M") %>%
FREQ %>%
month_to_date filter(date >= max(date) - years(2)) %>%
left_join(COICOP2016, by = "COICOP2016") %>%
group_by(COICOP2016) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
+ geom_line(aes(x = date, y = OBS_VALUE, color = Coicop2016)) +
ggplot theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "1 month",
labels = date_format("%b %Y")) +
theme(legend.position = c(0.28, 0.87),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 0.5, hjust=1)) +
scale_y_log10(breaks = seq(0, 200, 2),
labels = dollar_format(accuracy = 1, prefix = "")) +
geom_text_repel(aes(x = date, y = OBS_VALUE, label = round(OBS_VALUE, 1)),
fontface ="plain", color = "black", size = 3)
Comparer l’IPC et le déflateur de la consommation
Revenu primaire au RDB
Code
ig_b("insee", "FPS2021", "revenu-primaire-RDB")
Déflateur consommation finale des ménages
Code
ig_b("insee", "FPS2021", "depense-consommation-finale-menages")