Skip to content

Commit cd83876

Browse files
Antoine-Lalecherecjyetmanjacobvjk
authored
Weo 2024 antoine v2 (#65)
* just the beginning * FEAT: add automotive to WEO2024 * change path name * update config * add _ecb in name file * remove useless file * clear spacing * adapt function name * remove parameter in the function * change name file * replace _ecb by _hybrid_in_ev in process_scenario_weo * update config file * remove empty line * Update process_scenario_weo_2024_hybrid_in_ev.R named argument calls * Update process_scenario_weo_2024_hybrid_in_ev.R Co-authored-by: CJ Yetman <[email protected]> * Update process_scenario_weo_2024_hybrid_in_ev.R Co-authored-by: CJ Yetman <[email protected]> * Update config.yml Co-authored-by: CJ Yetman <[email protected]> * remove useless file --------- Co-authored-by: CJ Yetman <[email protected]> Co-authored-by: CJ Yetman <[email protected]> Co-authored-by: Jacob Kastl <[email protected]>
1 parent d453754 commit cd83876

File tree

3 files changed

+138
-1
lines changed

3 files changed

+138
-1
lines changed

config.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,20 @@ weo_2023:
5454
mpp_ats_raw_path: "mpp_ats-20240227"
5555
mpp_ats_raw_filename: "2022-08-12 - MPP ATS - RPK and GHG intensity.xlsx"
5656

57+
weo_2024_hybrid_in_ev:
58+
weo_2024_raw_path: "weo_2024/WEO2024 extended data"
59+
weo_2024_ext_data_regions_raw_filename: "WEO2024_Extended_Data_Regions.csv"
60+
weo_2024_ext_data_world_raw_filename: "WEO2024_Extended_Data_World.csv"
61+
weo_2024_fig_chptr_3_raw_filename: 'WEO2024_Figures_Chapter_03.xlsx'
62+
iea_global_ev_raw_filename: "electric-vehicle-sales-by-region-and-scenario-2030-and-2035.xlsx"
63+
mpp_ats_raw_path: "mpp_ats-20240227"
64+
mpp_ats_raw_filename: "2022-08-12 - MPP ATS - RPK and GHG intensity.xlsx"
65+
5766
2022Q4:
5867
inherits: [geco_2022, isf_2021, weo_2022]
5968

6069
2023Q4:
6170
inherits: [geco_2023, isf_2023, weo_2023]
71+
72+
2024Q4:
73+
inherits: [weo_2024_hybrid_in_ev]

main.R

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ if (fs::dir_exists(scenario_preparation_inputs_path)) {
1515
stop()
1616
}
1717

18-
1918
scenario_preparation_outputs_path <- Sys.getenv(
2019
"SCENARIO_PREPARATION_OUTPUTS_PATH",
2120
"./outputs"
Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
logger::log_info("WEO 2024: Setting WEO 2024 config.")
2+
3+
weo_2024_raw_path <- config[["weo_2024_raw_path"]]
4+
weo_2024_ext_data_regions_raw_filename <- config[["weo_2024_ext_data_regions_raw_filename"]]
5+
weo_2024_ext_data_world_raw_filename <- config[["weo_2024_ext_data_world_raw_filename"]]
6+
iea_global_ev_2024_raw_filename <- config[["iea_global_ev_raw_filename"]]
7+
weo_2024_fig_chptr_3_raw_filename <- config[["weo_2024_fig_chptr_3_raw_filename"]]
8+
mpp_ats_raw_path <- config[["mpp_ats_raw_path"]]
9+
mpp_ats_raw_filename <- config[["mpp_ats_raw_filename"]]
10+
11+
logger::log_info("WEO 2024: Setting WEO 2024 paths.")
12+
13+
weo_2024_raw_full_path <-
14+
file.path(
15+
scenario_preparation_inputs_path,
16+
weo_2024_raw_path
17+
)
18+
19+
weo_2024_ext_data_regions_raw_full_filepath <-
20+
file.path(
21+
weo_2024_raw_full_path,
22+
weo_2024_ext_data_regions_raw_filename
23+
)
24+
25+
weo_2024_ext_data_world_raw_full_filepath <-
26+
file.path(
27+
weo_2024_raw_full_path,
28+
weo_2024_ext_data_world_raw_filename
29+
)
30+
31+
iea_global_ev_2024_raw_full_filepath <-
32+
file.path(
33+
weo_2024_raw_full_path,
34+
iea_global_ev_2024_raw_filename
35+
)
36+
37+
weo_2024_fig_chptr_3_raw_full_filepath <-
38+
file.path(
39+
weo_2024_raw_full_path,
40+
weo_2024_fig_chptr_3_raw_filename
41+
)
42+
43+
mpp_ats_raw_full_path <-
44+
file.path(
45+
scenario_preparation_inputs_path,
46+
mpp_ats_raw_path
47+
)
48+
49+
mpp_ats_raw_full_filepath <-
50+
file.path(
51+
mpp_ats_raw_full_path,
52+
mpp_ats_raw_filename
53+
)
54+
55+
logger::log_info("WEO 2024: Checking that WEO 2024 filepaths exist.")
56+
57+
stopifnot(fs::file_exists(weo_2024_ext_data_regions_raw_full_filepath))
58+
stopifnot(fs::file_exists(weo_2024_ext_data_world_raw_full_filepath))
59+
stopifnot(fs::file_exists(weo_2024_fig_chptr_3_raw_full_filepath))
60+
stopifnot(fs::file_exists(iea_global_ev_2024_raw_full_filepath))
61+
stopifnot(fs::file_exists(mpp_ats_raw_full_filepath))
62+
63+
logger::log_info("WEO 2024: Loading WEO 2024 raw data.")
64+
65+
weo_2024_ext_data_regions_raw <-
66+
readr::read_csv(
67+
file = weo_2024_ext_data_regions_raw_full_filepath,
68+
show_col_types = FALSE
69+
)
70+
71+
weo_2024_ext_data_world_raw <-
72+
readr::read_csv(
73+
file = weo_2024_ext_data_world_raw_full_filepath,
74+
show_col_types = FALSE
75+
)
76+
77+
weo_2024_fig_chptr_3_raw <-
78+
tidyxl::xlsx_cells(
79+
path = weo_2024_fig_chptr_3_raw_full_filepath
80+
)
81+
82+
iea_global_ev_2024_raw <-
83+
readxl::read_xlsx(
84+
path = iea_global_ev_2024_raw_full_filepath,
85+
sheet = "electric-vehicle-sales-by-regio"
86+
)
87+
88+
iea_sales_share_ev <-
89+
readxl::read_xlsx(
90+
path = iea_global_ev_2024_raw_full_filepath,
91+
sheet = "electric vehicle share-ev"
92+
)
93+
94+
mpp_ats_raw <-
95+
tidyxl::xlsx_cells(
96+
path = mpp_ats_raw_full_filepath
97+
)
98+
99+
logger::log_info("WEO 2024: Processing WEO 2024 data.")
100+
101+
weo_2024 <-
102+
pacta.scenario.data.preparation::prepare_weo_2024_hybrid_in_ev_scenario(
103+
weo_2024_ext_data_regions_raw = weo_2024_ext_data_regions_raw,
104+
weo_2024_ext_data_world_raw = weo_2024_ext_data_world_raw,
105+
weo_2024_fig_chptr_3_raw = weo_2024_fig_chptr_3_raw,
106+
iea_global_ev_2024_raw = iea_global_ev_2024_raw,
107+
iea_sales_share_ev = iea_sales_share_ev,
108+
mpp_ats_raw = mpp_ats_raw
109+
)
110+
111+
if (pacta.data.validation::validate_intermediate_scenario_output(weo_2024)) {
112+
logger::log_info("WEO 2024: WEO 2024 data is valid.")
113+
114+
output_path <- fs::path(scenario_preparation_outputs_path, "weo_2024_hybrid_in_ev.csv")
115+
116+
readr::write_csv(
117+
x = weo_2024,
118+
file = output_path
119+
)
120+
121+
logger::log_info("WEO 2024: WEO 2024 data saved to {output_path}.")
122+
123+
} else {
124+
logger::log_error("WEO 2024 data is not valid.")
125+
stop()
126+
}

0 commit comments

Comments
 (0)