Indice des prix d’entretien-amélioration des bâtiments - Base 2021
Données - INSEE
Info
Last observation: 2026-Q1
First observation: 1999-Q1
Number of observations: 1 990
Last data update: 23 jul 2026, 22:52. Last compile: 24 jul 2026, 06:15
Structure
LAST_COMPILE
| LAST_COMPILE |
|---|
| 2026-07-24 |
Last
Code
`IPEA-2021` %>%
group_by(TIME_PERIOD) %>%
summarise(Nobs = n()) %>%
arrange(desc(TIME_PERIOD)) %>%
head(1) %>%
print_table_conditional()| TIME_PERIOD | Nobs |
|---|---|
| 2026-Q1 | 30 |
43-IPEA
Base = 2015
Code
`IPEA-2021` %>%
filter(CONSTRUCTION_ACTIVITE %in% c("43-IPEA-C", "43-IPEA-H", "43-IPEA")) %>%
mutate(date = zoo::as.yearqtr(TIME_PERIOD, format = "%Y-Q%q")) %>%
ggplot + geom_line(aes(x = date, y = OBS_VALUE, color = Type_batiment)) +
theme_minimal() + xlab("") + ylab("") +
zoo::scale_x_yearqtr(labels = date_format("%YT%q"),
breaks = expand.grid(1997:2100, c(1)) %>%
mutate(breaks = zoo::as.yearqtr(paste0(Var1, "Q", Var2))) %>%
pull(breaks)) +
scale_y_log10(breaks = seq(10, 200, 5)) +
theme(legend.position = c(0.3, 0.9),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))
1999-
Code
`IPEA-2021` %>%
mutate(date = zoo::as.yearqtr(TIME_PERIOD, format = "%Y-Q%q")) %>%
filter(CONSTRUCTION_ACTIVITE %in% c("43-IPEA-C", "43-IPEA-H", "43-IPEA"),
date >= zoo::as.yearqtr("1999 Q1")) %>%
group_by(TYPE_BATIMENT) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot + geom_line(aes(x = date, y = OBS_VALUE, color = Type_batiment)) +
theme_minimal() + xlab("") + ylab("Indice de prix des travaux d’entretien-amélioration \ndes bâtiments (100 = 1999T1)") +
zoo::scale_x_yearqtr(labels = date_format("%YT%q"),
breaks = expand.grid(1999:2100, c(1)) %>%
mutate(breaks = zoo::as.yearqtr(paste0(Var1, "Q", Var2))) %>%
pull(breaks)) +
scale_y_log10(breaks = seq(10, 200, 5)) +
theme(legend.position = c(0.3, 0.9),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))
2008-
Code
`IPEA-2021` %>%
mutate(date = zoo::as.yearqtr(TIME_PERIOD, format = "%Y-Q%q")) %>%
filter(CONSTRUCTION_ACTIVITE %in% c("43-IPEA-C", "43-IPEA-H", "43-IPEA"),
date >= zoo::as.yearqtr("2008 Q1")) %>%
group_by(TYPE_BATIMENT) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot + geom_line(aes(x = date, y = OBS_VALUE, color = Type_batiment)) +
theme_minimal() + xlab("") + ylab("Indice de prix des travaux d’entretien-amélioration \ndes bâtiments (100 = 2008T1)") +
zoo::scale_x_yearqtr(labels = date_format("%YT%q"),
breaks = expand.grid(2008:2100, c(1, 3)) %>%
mutate(breaks = zoo::as.yearqtr(paste0(Var1, "Q", Var2))) %>%
pull(breaks)) +
scale_y_log10(breaks = seq(10, 200, 5)) +
theme(legend.position = c(0.3, 0.9),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))
2015-
Code
`IPEA-2021` %>%
mutate(date = zoo::as.yearqtr(TIME_PERIOD, format = "%Y-Q%q")) %>%
filter(CONSTRUCTION_ACTIVITE %in% c("43-IPEA-C", "43-IPEA-H", "43-IPEA"),
date >= zoo::as.yearqtr("2015 Q1")) %>%
group_by(TYPE_BATIMENT) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot + geom_line(aes(x = date, y = OBS_VALUE, color = Type_batiment)) +
theme_minimal() + xlab("") + ylab("Indice de prix des travaux d’entretien-amélioration \ndes bâtiments (100 = 2015T1)") +
zoo::scale_x_yearqtr(labels = date_format("%YT%q"),
breaks = expand.grid(2015:2100, c(1, 3)) %>%
mutate(breaks = zoo::as.yearqtr(paste0(Var1, "Q", Var2))) %>%
pull(breaks)) +
scale_y_log10(breaks = seq(10, 200, 5)) +
theme(legend.position = c(0.3, 0.9),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))
2017-
Code
`IPEA-2021` %>%
mutate(date = zoo::as.yearqtr(TIME_PERIOD, format = "%Y-Q%q")) %>%
filter(CONSTRUCTION_ACTIVITE %in% c("43-IPEA-C", "43-IPEA-H", "43-IPEA"),
date >= zoo::as.yearqtr("2017 Q1")) %>%
group_by(TYPE_BATIMENT) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot + geom_line(aes(x = date, y = OBS_VALUE, color = Type_batiment)) +
theme_minimal() + xlab("") + ylab("Indice de prix des travaux d’entretien-amélioration \ndes bâtiments (100 = 2017T1)") +
zoo::scale_x_yearqtr(labels = date_format("%YT%q"),
breaks = expand.grid(2017:2100, c(1, 3)) %>%
mutate(breaks = zoo::as.yearqtr(paste0(Var1, "Q", Var2))) %>%
pull(breaks)) +
scale_y_log10(breaks = seq(10, 200, 5)) +
theme(legend.position = c(0.3, 0.9),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))
2020-
Code
`IPEA-2021` %>%
mutate(date = zoo::as.yearqtr(TIME_PERIOD, format = "%Y-Q%q")) %>%
filter(CONSTRUCTION_ACTIVITE %in% c("43-IPEA-C", "43-IPEA-H", "43-IPEA"),
date >= zoo::as.yearqtr("2020 Q1")) %>%
group_by(Type_batiment) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot + geom_line(aes(x = date, y = OBS_VALUE, color = Type_batiment)) +
theme_minimal() + xlab("") + ylab("Indice de prix des travaux d’entretien-amélioration \ndes bâtiments (100 = 2020T1)") +
zoo::scale_x_yearqtr(labels = date_format("%YT%q"),
breaks = expand.grid(2020:2100, c(1, 2, 3, 4)) %>%
mutate(breaks = zoo::as.yearqtr(paste0(Var1, "Q", Var2))) %>%
pull(breaks)) +
scale_y_log10(breaks = seq(10, 200, 2)) +
theme(legend.position = c(0.3, 0.9),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))