Deaths by week, sex and NUTS 3 region - demo_r_pjanaggr3
Data - Eurostat
Info
Last observation: Annual: 2025 (N = 26,760)
First observation: Annual: 1990 (N = 4,485)
Last data update: 23 jul 2026, 22:08. Last compile: 24 jul 2026, 01:12
Structure
Population Aging
Total Population, Indexed (1990 = 100)
Code
demo_r_pjanaggr3 %>%
filter(geo %in% c("FR", "DE", "IT", "ES", "PT"),
sex == "T",
age == "TOTAL") %>%
year_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100 * values / first(values)) %>%
ungroup() %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + scale_color_identity() + add_5flags +
scale_x_date(breaks = as.Date(paste0(seq(1990, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
xlab("") + ylab("Total population (1990 = 100)")
Age Structure, Latest Year
Code
latest_yr <- demo_r_pjanaggr3 %>%
filter(geo %in% c("FR", "DE", "IT", "ES", "PT"),
sex == "T",
age == "TOTAL",
!is.na(values)) %>%
summarise(m = max(time)) %>%
pull(m)
demo_r_pjanaggr3 %>%
filter(geo %in% c("FR", "DE", "IT", "ES", "PT"),
sex == "T",
age %in% c("Y_LT15", "Y15-64", "Y_GE65"),
time == latest_yr) %>%
group_by(geo) %>%
mutate(share = round(100 * values / sum(values), 1)) %>%
ungroup() %>%
select(Age, Geo, share) %>%
spread(Geo, share) %>%
print_table_conditional()| Age | France | Germany | Italy | Portugal | Spain |
|---|---|---|---|---|---|
| 65 years or over | 21.9 | 22.7 | 24.7 | 24.3 | 20.7 |
| From 15 to 64 years | 61.5 | 63.4 | 63.4 | 63.0 | 66.4 |
| Less than 15 years | 16.6 | 13.9 | 11.9 | 12.6 | 12.9 |
