Loading R/EIA_xl_readers.R +21 −13 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ pull(EIA_ID) -> target_plants 1990:2021L |> 1990:2022L |> map_dfr(function(yr){ if(yr %in% 1990:1991){ Loading Loading @@ -246,7 +246,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ ) } if(yr %in% 2013:2021){ if(yr %in% 2013:2022){ suppressWarnings( read_xlsx(paste0( plt_dir, "/eia860", Loading @@ -266,7 +266,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ left_join(nameplate_all, by = join_by(EIA_ID)) |> mutate(year = !!yr) } ) -> plant_nameplate_MW_1990_2021 ) -> plant_nameplate_MW_1990_2022 # reported plant capacity pre-1990 is available only via generation data files... Loading Loading @@ -294,7 +294,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ bind_rows( plant_nameplate_MW_1970_1989, plant_nameplate_MW_1990_2021 plant_nameplate_MW_1990_2022 ) -> plant_nameplant_MW Loading Loading @@ -366,7 +366,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ gen_1970_2000 2001:2021 %>% 2001:2022 %>% map_dfr(function(yr){ if(yr %in% 2001:2002){ Loading Loading @@ -423,7 +423,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ ) } if(yr %in% 2008:2021){ if(yr %in% 2008:2022){ if(yr %in% 2008:2010){ file_name <- paste0(gnr_dir, "f923_", yr, Loading Loading @@ -456,8 +456,16 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ rename(EIA_ID = `Plant Id`) -> EIA_data ) } if(yr == 2022){ file_name <- paste0(gnr_dir, "f923_", yr, "/EIA923_Schedules_2_3_4_5_M_12_2022_Final.xlsx") suppressWarnings( read_xlsx(file_name, skip = 5, .name_repair = "unique_quiet") |> rename(EIA_ID = `Plant Id`) -> EIA_data ) } # filter EIA file for hydro Loading @@ -482,12 +490,12 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ mutate(year = !!yr) ) } }) -> EIA_hydro_netgen_2001_2021 }) -> EIA_hydro_netgen_2001_2022 # generate table of hrs per year for computation of maximum output tibble( date = seq.Date(from = ymd("1970-01-01"), to = ymd("2021-12-31"), by = 1) date = seq.Date(from = ymd("1970-01-01"), to = ymd("2022-12-31"), by = 1) ) |> mutate(year = year(date)) |> summarise(n_hrs = n() * 24, .by = year) -> Loading @@ -496,7 +504,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ # combine nameplate and generation to get CF bind_rows( gen_1970_2000, EIA_hydro_netgen_2001_2021 |> EIA_hydro_netgen_2001_2022 |> rename(gen_MWh = MWh) ) |> left_join(plant_nameplate_MW_interpolated, Loading @@ -504,9 +512,9 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ left_join(hrs_per_year, join_by(year)) |> mutate(cap_MWh = nameplate * n_hrs, CF = gen_MWh / cap_MWh) -> gen_cap_CF_1970_2021 gen_cap_CF_1970_2022 return(gen_cap_CF_1970_2021) return(gen_cap_CF_1970_2022) } Loading R/plots.R +8 −8 Original line number Diff line number Diff line Loading @@ -61,7 +61,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ # get CF trends and split into categories CF_trends |> filter(analysis == "flow period plus") |> filter(analysis == "flow period add 2022") |> mutate(trend_CFpp_per_decade = sens_slope * 10 * 100) |> select(COMPLXID, trend_CFpp_per_decade, p_value) -> trend_data_all_plants Loading Loading @@ -218,7 +218,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ ### CA #### CFs |> filter(year %in% 1980:2021, filter(year %in% 1980:2022, COMPLXID %in% filter(dam_points, substr(HUC, 1, 2) == "18")$COMPLXID) -> dam_gen_CA Loading Loading @@ -262,7 +262,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ ### CA #### CFs |> filter(year %in% 1980:2021, filter(year %in% 1980:2022, COMPLXID %in% filter(dam_points, substr(HUC, 1, 2) %in% c("14", "15"))$COMPLXID) -> dam_gen_CO Loading Loading @@ -306,7 +306,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ ### PNW #### CFs |> filter(year %in% 1980:2021, filter(year %in% 1980:2022, COMPLXID %in% filter(dam_points, State %in% c("WA", "OR", "ID"))$COMPLXID) -> dam_gen_PNW Loading Loading @@ -351,7 +351,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ ### SE #### CFs |> filter(year %in% 1980:2021, filter(year %in% 1980:2022, COMPLXID %in% filter(dam_points, State %in% c("TN", "AL", "GA", "SC", "MD", Loading Loading @@ -397,7 +397,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ ### NE #### CFs |> filter(year %in% 1980:2021, filter(year %in% 1980:2022, COMPLXID %in% filter(dam_points, State %in% c("NY", "VT", "NH", "ME", "MA", Loading Loading @@ -1280,8 +1280,8 @@ plot_shift_sparks <- function(trend_shift_analysis, model_residuals_all trend_shift_analysis |> mutate(shift_more_likely = if_else(p_shift < p_trend, T, F)) |> arrange(shift_yr) |> mutate(shift_more_likely = if_else(p_shift <= p_trend, T, F)) |> arrange(shift_yr) |> #filter(COMPLXID == "hc1333") filter(shift_more_likely == TRUE) |> #count(shift_yr) |> arrange(shift_yr) select(COMPLXID, shift_yr) |> left_join(dam_names, by = join_by(COMPLXID)) |> Loading R/trends.R +2 −1 Original line number Diff line number Diff line Loading @@ -11,7 +11,8 @@ get_CF_trends <- function(annual_CFs){ ~start_yr, ~end_yr, ~analysis, #1970, 2021, "full period", 1980, 2019, "flow period", 1980, 2021, "flow period plus" 1980, 2021, "flow period plus", 1980, 2022, "flow period add 2022" #2001, 2021, "923 period" ) |> pmap_dfr(function(start_yr, end_yr, analysis){ Loading _targets.R +6 −6 Original line number Diff line number Diff line Loading @@ -55,20 +55,20 @@ list( format = "file" ), tar_target( EIA_annual_gen_cap_CF_1970_2021, EIA_annual_gen_cap_CF_1970_2022, get_EIA_annual_gen(gnr_dir = EIA_529_906_920_923, plt_dir = EIA_860), format = "parquet" ), tar_target( dam_annual_gen_cap_CF_1970_2021, dam_annual_gen_cap_CF_1970_2022, convert_EIA_to_COMPLX(EHA = EHA, EIA_data = EIA_annual_gen_cap_CF_1970_2021), EIA_data = EIA_annual_gen_cap_CF_1970_2022), format = "parquet" ), tar_target( CF_trends, get_CF_trends(annual_CFs = dam_annual_gen_cap_CF_1970_2021), get_CF_trends(annual_CFs = dam_annual_gen_cap_CF_1970_2022), format = "parquet" ), tar_target( Loading Loading @@ -110,7 +110,7 @@ list( tar_target( model_data_ready, prep_model_data(plant_to_flow_H_mapping = plant_to_flow_H_mapping, CFs = dam_annual_gen_cap_CF_1970_2021, CFs = dam_annual_gen_cap_CF_1970_2022, flows = DayFlow), format = "parquet" ), Loading Loading @@ -145,7 +145,7 @@ list( ), tar_target( CF_trend_map, plot_CF_trend_map(CFs = dam_annual_gen_cap_CF_1970_2021, plot_CF_trend_map(CFs = dam_annual_gen_cap_CF_1970_2022, CF_trends = CF_trends, EHA = EHA, WBD = WBD), format = "rds" Loading _targets/meta/meta +49 −0 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
R/EIA_xl_readers.R +21 −13 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ pull(EIA_ID) -> target_plants 1990:2021L |> 1990:2022L |> map_dfr(function(yr){ if(yr %in% 1990:1991){ Loading Loading @@ -246,7 +246,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ ) } if(yr %in% 2013:2021){ if(yr %in% 2013:2022){ suppressWarnings( read_xlsx(paste0( plt_dir, "/eia860", Loading @@ -266,7 +266,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ left_join(nameplate_all, by = join_by(EIA_ID)) |> mutate(year = !!yr) } ) -> plant_nameplate_MW_1990_2021 ) -> plant_nameplate_MW_1990_2022 # reported plant capacity pre-1990 is available only via generation data files... Loading Loading @@ -294,7 +294,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ bind_rows( plant_nameplate_MW_1970_1989, plant_nameplate_MW_1990_2021 plant_nameplate_MW_1990_2022 ) -> plant_nameplant_MW Loading Loading @@ -366,7 +366,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ gen_1970_2000 2001:2021 %>% 2001:2022 %>% map_dfr(function(yr){ if(yr %in% 2001:2002){ Loading Loading @@ -423,7 +423,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ ) } if(yr %in% 2008:2021){ if(yr %in% 2008:2022){ if(yr %in% 2008:2010){ file_name <- paste0(gnr_dir, "f923_", yr, Loading Loading @@ -456,8 +456,16 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ rename(EIA_ID = `Plant Id`) -> EIA_data ) } if(yr == 2022){ file_name <- paste0(gnr_dir, "f923_", yr, "/EIA923_Schedules_2_3_4_5_M_12_2022_Final.xlsx") suppressWarnings( read_xlsx(file_name, skip = 5, .name_repair = "unique_quiet") |> rename(EIA_ID = `Plant Id`) -> EIA_data ) } # filter EIA file for hydro Loading @@ -482,12 +490,12 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ mutate(year = !!yr) ) } }) -> EIA_hydro_netgen_2001_2021 }) -> EIA_hydro_netgen_2001_2022 # generate table of hrs per year for computation of maximum output tibble( date = seq.Date(from = ymd("1970-01-01"), to = ymd("2021-12-31"), by = 1) date = seq.Date(from = ymd("1970-01-01"), to = ymd("2022-12-31"), by = 1) ) |> mutate(year = year(date)) |> summarise(n_hrs = n() * 24, .by = year) -> Loading @@ -496,7 +504,7 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ # combine nameplate and generation to get CF bind_rows( gen_1970_2000, EIA_hydro_netgen_2001_2021 |> EIA_hydro_netgen_2001_2022 |> rename(gen_MWh = MWh) ) |> left_join(plant_nameplate_MW_interpolated, Loading @@ -504,9 +512,9 @@ get_EIA_annual_gen <- function(gnr_dir, plt_dir){ left_join(hrs_per_year, join_by(year)) |> mutate(cap_MWh = nameplate * n_hrs, CF = gen_MWh / cap_MWh) -> gen_cap_CF_1970_2021 gen_cap_CF_1970_2022 return(gen_cap_CF_1970_2021) return(gen_cap_CF_1970_2022) } Loading
R/plots.R +8 −8 Original line number Diff line number Diff line Loading @@ -61,7 +61,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ # get CF trends and split into categories CF_trends |> filter(analysis == "flow period plus") |> filter(analysis == "flow period add 2022") |> mutate(trend_CFpp_per_decade = sens_slope * 10 * 100) |> select(COMPLXID, trend_CFpp_per_decade, p_value) -> trend_data_all_plants Loading Loading @@ -218,7 +218,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ ### CA #### CFs |> filter(year %in% 1980:2021, filter(year %in% 1980:2022, COMPLXID %in% filter(dam_points, substr(HUC, 1, 2) == "18")$COMPLXID) -> dam_gen_CA Loading Loading @@ -262,7 +262,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ ### CA #### CFs |> filter(year %in% 1980:2021, filter(year %in% 1980:2022, COMPLXID %in% filter(dam_points, substr(HUC, 1, 2) %in% c("14", "15"))$COMPLXID) -> dam_gen_CO Loading Loading @@ -306,7 +306,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ ### PNW #### CFs |> filter(year %in% 1980:2021, filter(year %in% 1980:2022, COMPLXID %in% filter(dam_points, State %in% c("WA", "OR", "ID"))$COMPLXID) -> dam_gen_PNW Loading Loading @@ -351,7 +351,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ ### SE #### CFs |> filter(year %in% 1980:2021, filter(year %in% 1980:2022, COMPLXID %in% filter(dam_points, State %in% c("TN", "AL", "GA", "SC", "MD", Loading Loading @@ -397,7 +397,7 @@ plot_CF_trend_map <- function(CFs, CF_trends, EHA, WBD){ ### NE #### CFs |> filter(year %in% 1980:2021, filter(year %in% 1980:2022, COMPLXID %in% filter(dam_points, State %in% c("NY", "VT", "NH", "ME", "MA", Loading Loading @@ -1280,8 +1280,8 @@ plot_shift_sparks <- function(trend_shift_analysis, model_residuals_all trend_shift_analysis |> mutate(shift_more_likely = if_else(p_shift < p_trend, T, F)) |> arrange(shift_yr) |> mutate(shift_more_likely = if_else(p_shift <= p_trend, T, F)) |> arrange(shift_yr) |> #filter(COMPLXID == "hc1333") filter(shift_more_likely == TRUE) |> #count(shift_yr) |> arrange(shift_yr) select(COMPLXID, shift_yr) |> left_join(dam_names, by = join_by(COMPLXID)) |> Loading
R/trends.R +2 −1 Original line number Diff line number Diff line Loading @@ -11,7 +11,8 @@ get_CF_trends <- function(annual_CFs){ ~start_yr, ~end_yr, ~analysis, #1970, 2021, "full period", 1980, 2019, "flow period", 1980, 2021, "flow period plus" 1980, 2021, "flow period plus", 1980, 2022, "flow period add 2022" #2001, 2021, "923 period" ) |> pmap_dfr(function(start_yr, end_yr, analysis){ Loading
_targets.R +6 −6 Original line number Diff line number Diff line Loading @@ -55,20 +55,20 @@ list( format = "file" ), tar_target( EIA_annual_gen_cap_CF_1970_2021, EIA_annual_gen_cap_CF_1970_2022, get_EIA_annual_gen(gnr_dir = EIA_529_906_920_923, plt_dir = EIA_860), format = "parquet" ), tar_target( dam_annual_gen_cap_CF_1970_2021, dam_annual_gen_cap_CF_1970_2022, convert_EIA_to_COMPLX(EHA = EHA, EIA_data = EIA_annual_gen_cap_CF_1970_2021), EIA_data = EIA_annual_gen_cap_CF_1970_2022), format = "parquet" ), tar_target( CF_trends, get_CF_trends(annual_CFs = dam_annual_gen_cap_CF_1970_2021), get_CF_trends(annual_CFs = dam_annual_gen_cap_CF_1970_2022), format = "parquet" ), tar_target( Loading Loading @@ -110,7 +110,7 @@ list( tar_target( model_data_ready, prep_model_data(plant_to_flow_H_mapping = plant_to_flow_H_mapping, CFs = dam_annual_gen_cap_CF_1970_2021, CFs = dam_annual_gen_cap_CF_1970_2022, flows = DayFlow), format = "parquet" ), Loading Loading @@ -145,7 +145,7 @@ list( ), tar_target( CF_trend_map, plot_CF_trend_map(CFs = dam_annual_gen_cap_CF_1970_2021, plot_CF_trend_map(CFs = dam_annual_gen_cap_CF_1970_2022, CF_trends = CF_trends, EHA = EHA, WBD = WBD), format = "rds" Loading