| LAST_COMPILE |
|---|
| 2026-07-24 |
Banknotes statistics
Data - ECB
Info
LAST_COMPILE
Last
Code
BKN %>%
group_by(TIME_PERIOD, FREQ) %>%
summarise(Nobs = n()) %>%
arrange(desc(TIME_PERIOD)) %>%
head(5) %>%
print_table_conditional()| TIME_PERIOD | FREQ | Nobs |
|---|---|---|
| 2026-06 | M | 304 |
| 2026-05 | M | 304 |
| 2026-04 | M | 304 |
| 2026-03 | M | 304 |
| 2026-02 | M | 304 |
Info
- Liquidity. html
FREQ
Code
BKN %>%
left_join(FREQ, by = "FREQ") %>%
group_by(FREQ, Freq) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
{if (is_html_output()) print_table(.) else .}| FREQ | Freq | Nobs |
|---|---|---|
| M | Monthly | 185946 |
| H | Half-yearly | 1700 |
REF_AREA
Code
BKN %>%
left_join(REF_AREA, by = "REF_AREA") %>%
group_by(REF_AREA, Ref_area) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}BKN_DENOM
Code
BKN %>%
left_join(BKN_DENOM, by = "BKN_DENOM") %>%
group_by(BKN_DENOM, Bkn_denom) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}BKN_SERIES
Code
BKN %>%
left_join(BKN_SERIES, by = "BKN_SERIES") %>%
group_by(BKN_SERIES, Bkn_series) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}SERIES_DENOM
Code
BKN %>%
left_join(SERIES_DENOM, by = "SERIES_DENOM") %>%
group_by(SERIES_DENOM, Series_denom) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}COLLECTION
Code
BKN %>%
left_join(COLLECTION, by = "COLLECTION") %>%
group_by(COLLECTION, Collection) %>%
summarise(Nobs = n()) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}KEY
Code
BKN %>%
group_by(KEY, TITLE) %>%
summarise(Nobs = n()) %>%
mutate(KEY = paste0('<a target=_blank href=https://data.ecb.europa.eu/data/datasets/BKN/', KEY, ' >', KEY, '</a>')) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}Banknotes
Individual
Code
BKN %>%
filter(KEY %in% c("BKN.M.U2.NC10.B.50P2.AS.S.E",
"BKN.M.U2.NC10.B.20P2.AS.S.E",
"BKN.M.U2.NC10.B.10P2.AS.S.E",
"BKN.M.U2.NC10.B.ALLD.AS.S.E")) %>%
month_to_date %>%
mutate(OBS_VALUE = OBS_VALUE/1000000) %>%
left_join(BKN_DENOM, by = "BKN_DENOM") %>%
ggplot + geom_line(aes(x = date, y = OBS_VALUE, color = Bkn_denom)) +
ylab("Banknotes") + xlab("") + theme_minimal() +
theme(legend.position = c(0.45, 0.8),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 10000, 100),
labels = dollar_format(acc = 1, pre = "", su = "Bn€")) +
scale_x_date(breaks = as.Date(paste0(seq(1940, 2030, 2), "-01-01")),
labels = date_format("%Y"))
Stacked
Code
BKN %>%
filter(KEY %in% c("BKN.M.U2.NC10.B.50P2.AS.S.E",
"BKN.M.U2.NC10.B.20P2.AS.S.E",
"BKN.M.U2.NC10.B.10P2.AS.S.E")) %>%
month_to_date %>%
mutate(OBS_VALUE = OBS_VALUE/1000000) %>%
ggplot + geom_col(aes(x = date, y = OBS_VALUE, fill = TITLE_COMPL)) +
ylab("Liquidity-absorbing factors") + xlab("") + theme_minimal() +
theme(legend.position = c(0.45, 0.8),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 10000, 100),
labels = dollar_format(acc = 1, pre = "", su = "Bn€")) +
scale_x_date(breaks = as.Date(paste0(seq(1940, 2030, 2), "-01-01")),
labels = date_format("%Y"))