Balance of payments of the EU institutions - quarterly data (BPM6) - bop_euins6_q

Data - Eurostat

Structure

European Institutions

Current Account Balance

Code
bop_euins6_q |>
  filter(bop_item == "CA",
         stk_flow == "BAL",
         partner == "WORLD",
         sector10 == "S1",
         sectpart == "S1",
         geo %in% c("COMM", "EIB", "EDF")) |>
  quarter_to_date() |>
  mutate(values = values/1e9) |>
  add_flag_color("Geo") |>
  ggplot() + geom_line(aes(x = date, y = values, color = color)) +
  scale_color_identity() + add_flags +
  theme_minimal() +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.25, 0.15),
        legend.title = element_blank()) +
  xlab("") + ylab("Current account balance (Bn€)") +
  scale_y_continuous(breaks = seq(-40, 40, 10)) +
  geom_hline(yintercept = 0, linetype = "dashed", color = "black")

European Commission: World vs. Extra-EU

Code
bop_euins6_q |>
  filter(geo == "COMM",
         bop_item == "CA",
         stk_flow == "BAL",
         partner %in% c("WORLD", "EXT_EU27_2020"),
         sector10 == "S1",
         sectpart == "S1") |>
  quarter_to_date() |>
  mutate(values = values/1e9) |>
  ggplot() + geom_line(aes(x = date, y = values, color = Partner)) +
  theme_minimal() +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.15),
        legend.title = element_blank()) +
  xlab("") + ylab("Current account balance (Bn€)") +
  geom_hline(yintercept = 0, linetype = "dashed", color = "black")

Latest Quarter by Item

Code
latest_q <- bop_euins6_q |>
  filter(bop_item == "CA",
         stk_flow == "BAL",
         partner == "WORLD",
         geo == "COMM",
         !is.na(values)) |>
  summarise(m = max(time)) |>
  pull(m)

bop_euins6_q |>
  filter(geo %in% c("COMM", "EIB", "EDF"),
         stk_flow == "BAL",
         partner == "WORLD",
         sector10 == "S1",
         sectpart == "S1",
         bop_item %in% c("CA", "KA", "FA", "G", "S", "GS", "IN1", "IN2", "D1", "D2", "D4"),
         time == latest_q) |>
  mutate(values = values/1e9) |>
  select(bop_item, Bop_item, Geo, values) |>
  spread(Geo, values) |>
  print_table_conditional()
bop_item Bop_item European Commission European Development Fund European Investment Bank (EIB)
CA Current account 22.1405464 0.0137207 0.7716712
D1 Primary income: compensation of employees -1.6411246 NA -0.2079083
D2 Primary income: taxes on production and imports 8.7864802 NA NA
D4 Property income -0.3831743 NA 0.9253285
G Goods -0.0326598 NA -0.0289002
GS Goods and services -3.4983834 NA 0.0503780
IN1 Primary income -0.2478355 NA 0.7174201
IN2 Secondary income 25.8867653 0.0137207 0.0038730
KA Capital account -17.7147706 -0.2063820 NA
S Services -3.4657237 NA 0.0792783