Energy - monthly data

Data - Eurostat

Info

source dataset Title .html .rData
eurostat ei_isen_m Energy - monthly data 2025-10-10 2025-09-26

Data on energy

source dataset Title .html .rData
eurostat ei_isen_m Energy - monthly data 2025-10-10 2025-09-26
ec WOB Weekly Oil Bulletin 2025-08-28 2024-08-25
eurostat nrg_bal_c Complete energy balances 2023-12-31 2025-10-10
eurostat nrg_pc_202 Gas prices for household consumers - bi-annual data (from 2007 onwards) 2025-10-10 2025-10-10
eurostat nrg_pc_203 Gas prices for non-household consumers - bi-annual data (from 2007 onwards) 2023-06-11 2025-10-09
eurostat nrg_pc_203_c Gas prices components for non-household consumers - annual data 2025-10-10 2025-10-10
eurostat nrg_pc_203_h Gas prices for industrial consumers - bi-annual data (until 2007) 2025-10-10 2025-10-09
eurostat nrg_pc_203_v Non-household consumption volumes of gas by consumption bands 2025-10-10 2025-10-10
eurostat nrg_pc_204 Electricity prices for household consumers - bi-annual data (from 2007 onwards) 2025-10-10 2025-10-11
eurostat nrg_pc_205 Electricity prices for non-household consumers - bi-annual data (from 2007 onwards) 2023-06-11 2025-10-10
fred energy Energy 2025-10-09 2025-10-09
iea world_energy_balances_highlights_2022 World Energy Balances Highlights (2022 edition) 2024-06-20 2023-04-24
wb CMO World Bank Commodity Price Data (The Pink Sheet) 2025-08-24 2025-08-24
wdi EG.GDP.PUSE.KO.PP.KD GDP per unit of energy use (constant 2017 PPP $ per kg of oil equivalent) 2025-10-10 2025-09-27
wdi EG.USE.PCAP.KG.OE Energy use (kg of oil equivalent per capita) 2025-10-10 2025-09-27
yahoo energy Energy 2025-09-22 2025-10-11

Last

Code
ei_isen_m %>%
  group_by(time) %>%
  summarise(Nobs = n()) %>%
  arrange(desc(time)) %>%
  head(2) %>%
  print_table_conditional()
time Nobs
2025M09 9
2025M08 105

indic

French

Code
load_data("eurostat/indic_fr.RData")
ei_isen_m %>%
  left_join(indic, by = "indic") %>%
  group_by(indic, Indic) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  {if (is_html_output()) print_table(.) else .}
indic Indic Nobs
IS-PEL-GWH Production d'électricité - GWh 7184
IS-CEL-GWH Consommation d'électricité - GWh 7142
IS-IEL-GWH Importations d'électricité GWh 7142
IS-IDC-T Livraisons intérieures de charbon brun - 1000t 6993
IS-CNG-TJ Consommation totale de gaz naturel, TJ (GCV) 6976
IS-ING-TJ Importations de gaz naturel, TJ (GCV) 6936
IS-IDMG-T Livraisons intérieures d'essence moteur - 1000t 6862
IS-IDJF-T Livraisons intérieures de carburéacteur type kérosène - 1000t 6854
IS-ICO-T Importations de pétrole brut - 1000 t 6692
IS-PNG-TJ Production de gas naturel, TJ (GVC) 6656
IS-IDMS-T Livraisons intérieures d'essence pour moteurs - 1000t 4943
IS-IDGD-T Livraisons intérieures de gas-oil - 1000t 4941
IS-ROGD-T Production de gasoil des raffineries - 1000t 4791
IS-ROMS-T Production d'essence pour moteur des raffineries - 1000t 4790

English

Code
load_data("eurostat/indic.RData")
ei_isen_m %>%
  left_join(indic, by = "indic") %>%
  group_by(indic, Indic) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  {if (is_html_output()) print_table(.) else .}
indic Indic Nobs
IS-PEL-GWH Production of electricity - GWh 7184
IS-CEL-GWH Consumption of electricity - GWh 7142
IS-IEL-GWH Imports of electricity - GWh 7142
IS-IDC-T Inland deliveries of brown coal - 1000t 6993
IS-CNG-TJ Total consumption of natural gas, TJ (GCV) 6976
IS-ING-TJ Imports of natural gas, TJ (GCV) 6936
IS-IDMG-T Inland deliveries of motor gasoline - 1000t 6862
IS-IDJF-T Inland deliveries of kerosene-type jet fuel - 1000t 6854
IS-ICO-T Imports of crude oil - 1000t 6692
IS-PNG-TJ Production of natural gas, TJ (GCV) 6656
IS-IDMS-T Inland deliveries of motor spirit - 1000t 4943
IS-IDGD-T Inland deliveries of gas/diesel oil - 1000t 4941
IS-ROGD-T Refinery output of gas/diesel oil - 1000t 4791
IS-ROMS-T Refinery output of motor spirit - 1000t 4790

geo

Code
ei_isen_m %>%
  left_join(geo, by = "geo") %>%
  group_by(geo, Geo) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
  mutate(Flag = gsub(" ", "-", str_to_lower(Geo)),
         Flag = paste0('<img src="../../bib/flags/vsmall/', Flag, '.png" alt="Flag">')) %>%
  select(Flag, everything()) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}

time

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

France, Germany, Italy, Spain

Electricity

Consumption

Code
ei_isen_m %>%
  filter(geo %in% c("FR", "DE", "IT", "ES"),
         indic %in% c("IS-CEL-GWH")) %>%
  left_join(geo, by = "geo") %>%
  month_to_date %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  ggplot + geom_line(aes(x = date, y = values, color = color)) +
  scale_color_identity() + theme_minimal()  + add_4flags +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 2), "-01-01")),
               labels = date_format("%Y")) +
  xlab("") + ylab("")

Imports

Code
ei_isen_m %>%
  filter(geo %in% c("FR", "DE", "IT", "ES"),
         indic %in% c("IS-IEL-GWH")) %>%
  left_join(geo, by = "geo") %>%
  month_to_date %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  ggplot + geom_line(aes(x = date, y = values, color = color)) +
  scale_color_identity() + theme_minimal()  + add_4flags +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 2), "-01-01")),
               labels = date_format("%Y")) +
  xlab("") + ylab("")

Production

Code
ei_isen_m %>%
  filter(geo %in% c("FR", "DE", "IT", "ES"),
         indic %in% c("IS-PEL-GWH")) %>%
  left_join(geo, by = "geo") %>%
  month_to_date %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  ggplot + geom_line(aes(x = date, y = values, color = color)) +
  scale_color_identity() + theme_minimal()  + add_4flags +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 1), "-01-01")),
               labels = date_format("%Y")) +
  xlab("") + ylab("")

Natural Gas

Consumption

Code
ei_isen_m %>%
  filter(geo %in% c("FR", "DE", "IT", "ES"),
         indic %in% c("IS-CNG-TJ")) %>%
  left_join(geo, by = "geo") %>%
  month_to_date %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  ggplot + geom_line(aes(x = date, y = values, color = color)) +
  scale_color_identity() + theme_minimal()  + add_4flags +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 2), "-01-01")),
               labels = date_format("%Y")) +
  xlab("") + ylab("")

Imports

Code
ei_isen_m %>%
  filter(geo %in% c("FR", "DE", "IT", "ES"),
         indic %in% c("IS-ING-TJ")) %>%
  left_join(geo, by = "geo") %>%
  month_to_date %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  ggplot + geom_line(aes(x = date, y = values, color = color)) +
  scale_color_identity() + theme_minimal()  + add_4flags +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 2), "-01-01")),
               labels = date_format("%Y")) +
  xlab("") + ylab("")

Production

Code
ei_isen_m %>%
  filter(geo %in% c("FR", "DE", "IT", "ES"),
         indic %in% c("IS-PNG-TJ")) %>%
  left_join(geo, by = "geo") %>%
  month_to_date %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  ggplot + geom_line(aes(x = date, y = values, color = color)) +
  scale_color_identity() + theme_minimal()  + add_4flags +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 1), "-01-01")),
               labels = date_format("%Y")) +
  xlab("") + ylab("")