House price index (2015 = 100) - annual data - prc_hpi_ooa

Data - Eurostat

expend

Code
prc_hpi_ooa %>%
  left_join(expend, by = "expend") %>%
  group_by(expend, Expend) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  {if (is_html_output()) print_table(.) else .}
expend Expend Nobs
DW_ACQ_NEW New dwellings 1505
TOTAL Total 1505
DW_ACQ Acquisitions of dwellings 1504
DW_ACQ_OTH Other services related to the acquisition of dwellings 1496
DW_OWN Ownership of dwellings 1495
DW_ACQ_NEWP Purchases of newly built dwellings 1488
DW_OWN_RMNT Major repairs and maintenance 1480
DW_OWN_INS Insurance connected with dwellings 1409
DW_ACQ_NEWSB Self-build dwellings and major renovations 1363
DW_ACQ_EXST Existing dwellings new to the households 679
DW_OWN_OTH Other services related to ownership of dwellings 543

unit

Code
prc_hpi_ooa %>%
  left_join(unit, by = "unit") %>%
  group_by(unit, Unit) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  {if (is_html_output()) print_table(.) else .}
unit Unit Nobs
I15_A_AVG Annual average index, 2015=100 4956
I10_A_AVG Annual average index, 2010=100 4888
RCH_A_AVG Annual average rate of change 4623

geo

Code
prc_hpi_ooa %>%
  left_join(geo, by = "geo") %>%
  group_by(geo, Geo) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

time

Code
prc_hpi_ooa %>%
  group_by(time) %>%
  summarise(Nobs = n()) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

expend Total

France, Italy, Germany

Code
prc_hpi_ooa %>%
  filter(expend == "TOTAL",
         geo %in% c("FR", "IT", "DE"),
         unit == "I15_A_AVG") %>%
  time_to_date %>%
  left_join(geo, by = "geo") %>%
  ggplot() + geom_line() + theme_minimal() +
  aes(x = date, y = values, color = Geo, linetype = Geo) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_x_date(breaks = seq(1920, 2025, 1) %>% 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, 300, 10)) +
  ylab("House Price Index") + xlab("")

Belgium, Denmark, Finland

Code
prc_hpi_ooa %>%
  filter(expend == "TOTAL",
         geo %in% c("BE", "DK", "FI"),
         unit == "I15_A_AVG") %>%
  time_to_date %>%
  left_join(geo, by = "geo") %>%
  ggplot() + geom_line() + theme_minimal() +
  aes(x = date, y = values, color = Geo, linetype = Geo) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_x_date(breaks = seq(1920, 2025, 1) %>% 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, 300, 10)) +
  ylab("House Price Index") + xlab("")

All Series

France

Code
prc_hpi_ooa %>%
  filter(geo %in% c("FR"),
         unit == "I15_A_AVG") %>%
  time_to_date %>%
  left_join(geo, by = "geo") %>%
  left_join(expend, by = "expend") %>%
  ggplot() + geom_line() + theme_minimal() +
  aes(x = date, y = values, color = Expend, linetype = Expend) +
  scale_color_manual(values = viridis(12)[1:11]) +
  scale_x_date(breaks = seq(1920, 2025, 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(-100, 300, 10)) +
  ylab("House Price Index") + xlab("")

Germany

Code
prc_hpi_ooa %>%
  filter(geo %in% c("DE"),
         unit == "I15_A_AVG") %>%
  time_to_date %>%
  left_join(geo, by = "geo") %>%
  left_join(expend, by = "expend") %>%
  ggplot() + geom_line() + theme_minimal() +
  aes(x = date, y = values, color = Expend, linetype = Expend) +
  scale_color_manual(values = viridis(12)[1:11]) +
  scale_x_date(breaks = seq(1920, 2025, 1) %>% 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, 300, 10)) +
  ylab("House Price Index") + xlab("")

Italy

Code
prc_hpi_ooa %>%
  filter(geo %in% c("IT"),
         unit == "I15_A_AVG") %>%
  time_to_date %>%
  left_join(geo, by = "geo") %>%
  left_join(expend, by = "expend") %>%
  ggplot() + geom_line() + theme_minimal() +
  aes(x = date, y = values, color = Expend, linetype = Expend) +
  scale_color_manual(values = viridis(12)[1:11]) +
  scale_x_date(breaks = seq(1920, 2025, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%y")) +
  theme(legend.position = c(0.6, 0.9),
        legend.title = element_blank()) +
  scale_y_log10(breaks = seq(-100, 300, 5)) +
  ylab("House Price Index") + xlab("")