source | dataset | .html | .RData |
---|---|---|---|
2024-06-30 | 2024-06-30 | ||
2024-06-19 | 2024-05-10 | ||
2024-06-19 | 2024-05-10 | ||
2024-06-30 | 2024-06-30 | ||
2024-06-23 | 2024-06-30 | ||
2024-06-20 | 2024-06-30 | ||
2024-06-24 | 2024-06-30 | ||
2024-06-24 | 2024-07-01 | ||
2024-06-30 | 2024-06-30 | ||
2024-06-24 | 2024-06-24 | ||
2024-06-30 | 2020-01-18 | ||
2024-07-01 | 2023-10-19 |
Analytical house prices indicators
Data - OECD
Info
Data on housing
LAST_COMPILE
LAST_COMPILE |
---|
2024-07-01 |
Last
obsTime | Nobs |
---|---|
2023-Q3 | 41 |
IND
Code
%>%
HOUSE_PRICES left_join(HOUSE_PRICES_var$IND, by = "IND") %>%
group_by(IND, Ind) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) print_table(.) else .} {
IND | Ind | Nobs |
---|---|---|
RPI | Rent prices, s.a. | 9572 |
HPI | Nominal house price indices, s.a. | 8665 |
RHP | Real house price indices, s.a. | 8665 |
HPI_RPI | Price to rent ratio | 7827 |
HPI_YDH | Price to income ratio | 7260 |
HPI_RPI_AVG | Standardised price-rent ratio | 6237 |
HPI_YDH_AVG | Standardised price-income ratio | 5998 |
COU
Code
%>%
HOUSE_PRICES left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
group_by(COU, Cou) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
mutate(Flag = gsub(" ", "-", str_to_lower(Cou)),
Flag = paste0('<img src="../../icon/flag/vsmall/', Flag, '.png" alt="Flag">')) %>%
select(Flag, everything()) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .} {
UNIT
Code
%>%
HOUSE_PRICES left_join(HOUSE_PRICES_var$UNIT, by = "UNIT") %>%
group_by(UNIT, Unit) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F) else .} {
TIME_FORMAT
Code
%>%
HOUSE_PRICES left_join(HOUSE_PRICES_var$TIME_FORMAT, by = "TIME_FORMAT") %>%
group_by(TIME_FORMAT, Time_format) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) print_table(.) else .} {
TIME_FORMAT | Time_format | Nobs |
---|---|---|
P1Y | Annual | 49647 |
P3M | Quarterly | 4577 |
Rent Prices - RPI
Number of Observations
Code
%>%
HOUSE_PRICES filter(IND == "RPI",
== "P1Y",
TIME_FORMAT == "IDX",
UNIT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
group_by(COU, Cou) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
mutate(Flag = gsub(" ", "-", str_to_lower(Cou)),
Flag = paste0('<img src="../../icon/flag/vsmall/', Flag, '.png" alt="Flag">')) %>%
select(Flag, everything()) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .} {
United States, Japan, Canada
Code
%>%
HOUSE_PRICES filter(IND == "RPI",
%in% c("USA", "JPN", "CAN"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Rent Prices") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
France, Spain, Italy
Code
%>%
HOUSE_PRICES filter(IND == "RPI",
%in% c("FRA", "ITA", "ESP"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Rent Prices") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
Nominal house price indices, s.a. - HPI
United States, Japan, Canada
Code
%>%
HOUSE_PRICES filter(IND == "HPI",
%in% c("USA", "JPN", "CAN"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Nominal house price indices") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
France, Spain, Italy
Code
%>%
HOUSE_PRICES filter(IND == "HPI",
%in% c("FRA", "ITA", "ESP"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Nominal house price indices") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
Real house price indices, s.a. - RHP
United States, Japan, Canada
Code
%>%
HOUSE_PRICES filter(IND == "RHP",
%in% c("USA", "JPN", "CAN"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Real house price indices") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
France, Spain, Italy
Code
%>%
HOUSE_PRICES filter(IND == "RHP",
%in% c("FRA", "ITA", "ESP"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Real house price indices") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
Price to rent ratio - HPI_RPI
United States, Japan, Canada
Code
%>%
HOUSE_PRICES filter(IND == "HPI_RPI",
%in% c("USA", "JPN", "CAN"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Price to rent ratio") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
France, Spain, Italy
Code
%>%
HOUSE_PRICES filter(IND == "HPI_RPI",
%in% c("FRA", "ITA", "ESP"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Price to rent ratio") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
France, Spain, Italy, United States, Sweden,
All
Code
%>%
HOUSE_PRICES filter(IND == "HPI_RPI",
%in% c("DEU", "FRA", "SWE", "JPN", "ESP", "ITA", "USA", "CHE"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Price to rent ratio") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_8flags +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank())
1998
Code
%>%
HOUSE_PRICES filter(IND == "HPI_RPI",
%in% c("DEU", "FRA", "SWE", "JPN", "ESP", "ITA", "USA", "CHE"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
filter(date >= as.Date("1998-01-01")) %>%
group_by(Location) %>%
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("1998-01-01")]) %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Price to rent ratio (1998 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2022, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_8flags +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank())
Price to income ratio - HPI_YDH
United States, Japan, Canada
Code
%>%
HOUSE_PRICES filter(IND == "HPI_YDH",
%in% c("USA", "JPN", "CAN"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Price to income ratio") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
France, Spain, Italy
Code
%>%
HOUSE_PRICES filter(IND == "HPI_YDH",
%in% c("FRA", "ITA", "ESP"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Price to income ratio") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
Standardised price-rent ratio - HPI_RPI_AVG
United States, Japan, Canada
Code
%>%
HOUSE_PRICES filter(IND == "HPI_RPI_AVG",
%in% c("USA", "JPN", "CAN"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Standardised price-rent ratio") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
France, Spain, Italy
Code
%>%
HOUSE_PRICES filter(IND == "HPI_RPI_AVG",
%in% c("FRA", "ITA", "ESP"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Standardised price-rent ratio") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
Standardised price-income ratio - HPI_YDH_AVG
United States, Japan, Canada
Code
%>%
HOUSE_PRICES filter(IND == "HPI_YDH_AVG",
%in% c("USA", "JPN", "CAN"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Standardised price-income ratio") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags
France, Spain, Italy
Code
%>%
HOUSE_PRICES filter(IND == "HPI_YDH_AVG",
%in% c("FRA", "ITA", "ESP"),
COU == "P1Y",
TIME_FORMAT substr(obsTime, 6, 6) != "Q") %>%
left_join(HOUSE_PRICES_var$COU, by = "COU") %>%
rename(Location = Cou) %>%
left_join(colors, by = c("Location" = "country")) %>%
year_to_date() %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Standardised price-income ratio") +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1900, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 600, 10),
labels = dollar_format(a = 1, prefix = "")) +
scale_color_identity() + add_3flags