Weekly Oil Bulletin
Data - ec
Info
Data on energy
source | dataset | Title | Download | Compile |
---|---|---|---|---|
ec | WOB | Weekly Oil Bulletin | 2024-01-03 | [2024-06-19] |
eurostat | ei_isen_m | Energy - monthly data | 2024-06-08 | [2024-06-18] |
eurostat | nrg_bal_c | Complete energy balances | 2024-06-08 | [2023-12-31] |
eurostat | nrg_pc_202 | Gas prices for household consumers - bi-annual data (from 2007 onwards) | 2024-06-08 | [2024-06-19] |
eurostat | nrg_pc_203 | Gas prices for non-household consumers - bi-annual data (from 2007 onwards) | 2024-06-07 | [2023-06-11] |
eurostat | nrg_pc_203_c | Gas prices components for non-household consumers - annual data | 2024-06-08 | [2024-06-19] |
eurostat | nrg_pc_203_h | Gas prices for industrial consumers - bi-annual data (until 2007) | 2024-06-18 | [2024-06-19] |
eurostat | nrg_pc_203_v | Non-household consumption volumes of gas by consumption bands | 2024-06-08 | [2024-06-19] |
eurostat | nrg_pc_204 | Electricity prices for household consumers - bi-annual data (from 2007 onwards) | 2024-06-18 | [2024-06-19] |
eurostat | nrg_pc_205 | Electricity prices for non-household consumers - bi-annual data (from 2007 onwards) | 2024-06-08 | [2023-06-11] |
fred | energy | Energy | 2024-06-07 | [2024-06-18] |
iea | world_energy_balances_highlights_2022 | World Energy Balances Highlights (2022 edition) | 2023-04-24 | [2024-06-18] |
wb | CMO | World Bank Commodity Price Data (The Pink Sheet) | 2024-05-23 | [2024-06-19] |
wdi | EG.GDP.PUSE.KO.PP.KD | GDP per unit of energy use (constant 2017 PPP $ per kg of oil equivalent) | 2024-04-14 | [2024-06-19] |
wdi | EG.USE.PCAP.KG.OE | Energy use (kg of oil equivalent per capita) | 2024-04-14 | [2024-06-19] |
yahoo | energy | Energy | 2024-05-27 | [2024-06-18] |
LAST_COMPILE
LAST_COMPILE |
---|
2024-06-20 |
Last
Code
%>%
WOB group_by(date) %>%
summarise(Nobs = n()) %>%
arrange(desc(date)) %>%
head(2) %>%
print_table_conditional()
date | Nobs |
---|---|
2024-01-01 | 14 |
2023-12-25 | 246 |
Product Name
Code
%>%
WOB group_by(`Product Name`, `Prices Unit`) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional
Product Name | Prices Unit | Nobs |
---|---|---|
Automotive gas oil | 1000L | 14796 |
Euro-super 95 | 1000L | 14796 |
Heating gas oil | 1000L | 14198 |
LPG - motor fuel | 1000L | 10250 |
Fuel oil - Sulphur less than 1% | t | 9842 |
Fuel oil - Sulphur higher than 1% | t | 1620 |
Lead substitute petrol | 1000L | 538 |
NA | NA | 454 |
Product Name | Prices Unit | 414 |
Standard Grade Burning Oil UK | 1000L | 234 |
tax
Code
%>%
WOB group_by(tax) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional
tax | Nobs |
---|---|
Weekly price with taxes | 33571 |
Weekly price without taxes | 33571 |
Geo
Code
%>%
WOB group_by(geo, Geo) %>%
summarise(Nobs = n()) %>%
mutate(Flag = gsub(" ", "-", str_to_lower(gsub(" ", "-", Geo))),
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 .} {
France, Germany, Spain, Italy
April 2020-
Index
Code
%>%
WOB filter(`Product Name` == "Euro-super 95",
%in% c("France", "Germany", "Spain", "Italy")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= as.Date("2020-04-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo, tax) %>%
mutate(values = 100*values/values[date == as.Date("2022-02-21")]) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Euro-super 95 (100 = February 21, 2022)") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "3 month"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_log10(breaks = seq(10, 300, 10)) +
theme(legend.position = c(0.7, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
Value
Code
%>%
WOB filter(`Product Name` == "Euro-super 95",
%in% c("France", "Germany", "Spain", "Italy")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= as.Date("2020-04-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Euro-super 95") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "3 month"),
labels = scales::date_format("%b %y")) + add_8flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.3, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
Since War in Ukraine
Index
Code
%>%
WOB filter(`Product Name` == "Euro-super 95",
%in% c("France", "Germany", "Spain", "Italy")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= as.Date("2022-02-21")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo, tax) %>%
mutate(values = 100*values/values[date == as.Date("2022-02-21")]) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Euro-super 95 (100 = February 21, 2022)") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "1 month"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_log10(breaks = seq(10, 300, 10)) +
theme(legend.position = c(0.7, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
Value
Code
%>%
WOB filter(`Product Name` == "Euro-super 95",
%in% c("France", "Germany", "Spain", "Italy")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= as.Date("2022-02-21")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Euro-super 95") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "1 month"),
labels = scales::date_format("%b %y")) + add_8flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.7, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
France Italy, Germany, Spain
3 months
Code
%>%
WOB filter(`Product Name` == "Euro-super 95",
%in% c("France", "Germany", "Spain", "Italy"),
Geo == "Weekly price with taxes") %>%
tax mutate(values = values/1000) %>%
filter(date >= Sys.Date() - months(6)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("Automotive gas oil") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2018-09-10"), Sys.Date(), "1 week"),
labels = scales::date_format("%d %b %y")) + add_4flags +
scale_y_continuous(breaks = seq(-100, 100, 0.05),
labels = scales::dollar_format(a = .01, pre = "", su = " €/L")) +
theme(legend.position = c(0.3, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
France, Germany, Spain
Automotive gas oil
Since February 21, 2022 (War in Ukraine)
Value
Code
%>%
WOB filter(`Product Name` == "Automotive gas oil",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= as.Date("2022-02-21")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Automotive gas oil") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "1 month"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.7, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
Index
Code
%>%
WOB filter(`Product Name` == "Automotive gas oil",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= as.Date("2022-02-21")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo, tax) %>%
mutate(values = 100*values/values[date == as.Date("2022-02-21")]) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Automotive gas oil") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "1 month"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_continuous(breaks = seq(100, 300, 10)) +
theme(legend.position = c(0.7, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
2022-
Code
%>%
WOB filter(`Product Name` == "Automotive gas oil",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= as.Date("2022-01-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Automotive gas oil") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "1 month"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.7, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
1 year
Code
%>%
WOB filter(`Product Name` == "Automotive gas oil",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= Sys.Date() - years(1)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Automotive gas oil") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "1 month"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.7, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
3 months
Code
%>%
WOB filter(`Product Name` == "Automotive gas oil",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= Sys.Date() - months(3)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Automotive gas oil") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2018-09-10"), Sys.Date(), "1 week"),
labels = scales::date_format("%d %b %y")) + add_6flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.3, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
All
Code
%>%
WOB filter(`Product Name` == "Automotive gas oil",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Automotive gas oil") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2015-12-01"), as.Date("2024-01-01"), "6 months"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.3, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
Heating gas oil
2022-
Code
%>%
WOB filter(`Product Name` == "Heating gas oil",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= as.Date("2022-01-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Heating gas oil") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "1 month"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.7, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
All
Code
%>%
WOB filter(`Product Name` == "Heating gas oil",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Heating gas oil") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2015-12-01"), as.Date("2024-01-01"), "6 months"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.3, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
Euro-super 95
Since War in Ukraine
Value
Code
%>%
WOB filter(`Product Name` == "Euro-super 95",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= as.Date("2022-02-21")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Euro-super 95") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "1 month"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.7, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
Index
Code
%>%
WOB filter(`Product Name` == "Euro-super 95",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= as.Date("2022-02-21")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo, tax) %>%
mutate(values = 100*values/values[date == as.Date("2022-02-21")]) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Euro-super 95") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "1 month"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_continuous(breaks = seq(10, 300, 10)) +
theme(legend.position = c(0.7, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
2022-
Code
%>%
WOB filter(`Product Name` == "Euro-super 95",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
filter(date >= as.Date("2022-01-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Euro-super 95") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2019-11-01"), as.Date("2024-01-01"), "1 month"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.7, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())
All
Code
%>%
WOB filter(`Product Name` == "Euro-super 95",
%in% c("France", "Germany", "Spain")) %>%
Geo mutate(values = values/1000) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot() + geom_line(aes(x = date, y = values, color = color, linetype = tax)) +
theme_minimal() + xlab("") + ylab("Euro-super 95") + scale_color_identity() +
scale_x_date(breaks = seq.Date(as.Date("2015-12-01"), as.Date("2024-01-01"), "6 months"),
labels = scales::date_format("%b %y")) + add_6flags +
scale_y_continuous(breaks = seq(-100, 100, 0.1),
labels = scales::dollar_format(a = .1, pre = "", su = " €/L")) +
theme(legend.position = c(0.3, 0.95),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
legend.title = element_blank())