Nothing
## ----setup, include = FALSE---------------------------------------------------
knitr::opts_chunk$set(
echo = TRUE,
collapse = TRUE,
comment = "#>"
)
## ----load_data----------------------------------------------------------------
suppressPackageStartupMessages({
library(magrittr)
library(dplyr)
library(stringr)
library(tidyr)
library(purrr)
library(broom)
library(knitr)
library(scales)
library(kayadata)
})
kaya <- get_kaya_data("United States")
## ----plot_P_1990, fig.cap = str_c("Trend in population for U.S. from 1990--", max(kaya$year, na.rm = T))----
plot_kaya(kaya, "P", log_scale = TRUE, start_year = 1990, trend_line = TRUE,
points = FALSE) +
theme_bw()
## ----plot_g_1990, fig.cap = str_c("Trend in per-capita GDP for U.S. from 1990--", max(kaya$year, na.rm = T))----
plot_kaya(kaya, "g", log_scale = TRUE, start_year = 1990, trend_line = TRUE,
points = FALSE) +
theme_bw()
## ----plot_e_1990, fig.cap = str_c("Trend in primary-energy intensity of the U.S. economy from 1990--", max(kaya$year, na.rm = T))----
plot_kaya(kaya, "e", log_scale = TRUE, start_year = 1990, trend_line = TRUE,
points = FALSE) +
theme_bw()
## ----plot_f_1990, fig.cap = str_c("Trend in the carbon-dioxide intensity of the U.S. energy supply from 1990--", max(kaya$year, na.rm = T))----
plot_kaya(kaya, "f", log_scale = TRUE, start_year = 1990, trend_line = TRUE,
points = FALSE) +
theme_bw()
## ----plot_f_2005, fig.cap = str_c("Trend in the carbon-dioxide intensity of the U.S. energy supply from 2005--", max(kaya$year, na.rm = T))----
plot_kaya(kaya, "f", log_scale = TRUE, start_year = 2005, trend_line = TRUE,
points = FALSE) +
theme_bw()
## ----compute-bottom-up-rates--------------------------------------------------
vars <- c("P", "g", "e", "f")
historical_trends <- map_dbl(vars,
~kaya %>%
gather(key = variable, value = value, -region, -year) %>%
filter(variable == .x,
year >= ifelse(.x == "f", 2005, 1990)) %>%
lm(log(value) ~ year, data = .) %>% tidy() %>%
filter(term == "year") %$% estimate
) %>% set_names(vars)
tibble(Variable = names(historical_trends),
Rate = map_chr(historical_trends, ~percent(.x, 0.01))) %>%
kable(align = c("c", "r"))
## ----implied_rate_F-----------------------------------------------------------
ref_year <- 2005
target_years <- c(2025, 2050)
target_reduction <- c(0.26, 0.80)
F_ref <- kaya %>% filter(year == ref_year) %$% F
F_target <- tibble(year = target_years, F = F_ref * (1 - target_reduction)) %>%
mutate(implied_rate = log(F / F_ref) / (year - ref_year))
F_target %>%
mutate(implied_rate = map_chr(implied_rate, ~percent(.x, 0.01))) %>%
rename("Target F" = F, "Implied Rate" = implied_rate) %>%
kable(align = c("crr"), digits = 0)
## ----implied_decarb_bottom_up-------------------------------------------------
implied_decarb_rates <- F_target %>%
transmute(year, impl_F = implied_rate,
hist_G = historical_trends['P'] + historical_trends['g'],
hist_ef = historical_trends['e'] + historical_trends['f'],
impl_ef = impl_F - hist_G)
implied_decarb_rates %>%
mutate_at(vars(starts_with("hist_"), starts_with("impl_")),
list(~map_chr(., ~percent(.x, 0.01)))) %>%
select(Year = year,
"implied F" = impl_F,
"historical G" = hist_G,
"implied ef" = impl_ef,
"historical ef" = hist_ef
) %>%
kable(align="rrrrr")
## ----top_down_trends----------------------------------------------------------
top_down_trends <- get_top_down_trends("United States")
top_down_trends %>% select(P, G, E) %>%
mutate_all(list(~map_chr(., ~percent(.x, 0.01)))) %>%
rename("P trend" = P, "G trend" = G, "E trend" = E) %>%
kable(align="rrr")
## ----implied_decarb_top_down--------------------------------------------------
implied_decarb_rates_top_down <- F_target %>%
transmute(year, impl_F = implied_rate,
top_down_E = top_down_trends$E,
hist_f = historical_trends['f'],
impl_f = impl_F - top_down_E)
implied_decarb_rates_top_down %>%
mutate_at(vars(starts_with("hist_"), starts_with("impl_"),
starts_with("top_down")),
list(~map_chr(., ~percent(.x, 0.01)))) %>%
select(Year = year,
"implied F" = impl_F,
"top-down E" = top_down_E,
"implied f" = impl_f,
"historical f" = hist_f
) %>%
kable(align="rrrrr")
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.