View source: R/table_functions.R
assemble_phi_u_tables | R Documentation |
This function is used in the drake workflow to assemble completed phi (exergy-to-energy ratio) tables given a set of phi tables read from machine data files and a phi constants table. The algorithm gives priority in this order:
phi values from the incomplete_phi_u_table
argument
phi values from climatic temperatures
phi values from the phi_constants_table
argument
assemble_phi_u_tables( incomplete_phi_u_table, phi_constants_table, completed_efficiency_table = NULL, countries, max_year = NULL, country = IEATools::iea_cols$country, year = IEATools::iea_cols$year, product = IEATools::iea_cols$product, machine = IEATools::template_cols$machine, quantity = IEATools::template_cols$quantity, phi_u = IEATools::template_cols$phi_u, .values = IEATools::template_cols$.values, eu_product = IEATools::template_cols$eu_product, eta_fu_source = IEATools::template_cols$eta_fu_source, phi_colname = IEATools::phi_constants_names$phi_colname, phi_source_colname = IEATools::phi_constants_names$phi_source_colname, is_useful = IEATools::phi_constants_names$is_useful_colname, eta_fu_tables = PFUWorkflow::phi_sources$eta_fu_tables, phi_constants = PFUWorkflow::phi_sources$phi_constants )
incomplete_phi_u_table |
A data frame of phi values read from machine efficiency and phi data files.
This data frame can be "incomplete," i.e., it can be missing
phi values.
The phi values from |
phi_constants_table |
A data frame of constant phi values with reasonable default values for all energy products. |
completed_efficiency_table |
A data frame containing completed efficiency tables.
This data frame identifies all useful products
for which we need phi values.
Default is |
countries |
A vector of countries for which completed phi tables are to be assembled. |
max_year |
The latest year for which analysis is desired. Default is |
country, year, product |
See |
machine, quantity, phi_u, .values, eu_product, eta_fu_source |
See |
phi_colname, phi_source_colname, is_useful |
See |
eta_fu_tables, phi_constants |
See |
Note that the needed phi values are taken from completed_efficiency_table
(when not NULL
).
If completed_efficiency_table
is NULL
,
the needed phi values are taken from incomplete_phi_u_table
,
meaning that any empty (NA
) phi values are obtained from climatic temperatures or phi_constants_table
.
A data frame of phi values for every combination of country, year, machine, destination, etc.
library(dplyr) library(IEATools) library(magrittr) phi_constants_table <- IEATools::load_phi_constants_table() # Load a phi_u_table. phi_table <- IEATools::load_eta_fu_data() %>% # Convert to tidy format. dplyr::mutate( "{IEATools::template_cols$maximum_values}" := NULL, "{IEATools::iea_cols$unit}" := NULL ) %>% tidyr::pivot_longer(cols = IEATools::year_cols(.), names_to = IEATools::iea_cols$year, values_to = IEATools::template_cols$.values) %>% # Convert to a table of phi values only dplyr::filter(.data[[IEATools::template_cols$quantity]] == IEATools::template_cols$phi_u) # Set a value to NA (Charcoal stoves, MTH.100.C, GHA, 1971) in the phi table. incomplete_phi_table <- phi_table %>% dplyr::mutate( "{IEATools::template_cols$.values}" := dplyr::case_when( .data[[IEATools::iea_cols$country]] == "GHA" & .data[[IEATools::iea_cols$year]] == 1971 & .data[[IEATools::template_cols$machine]] == "Charcoal stoves" ~ NA_real_, TRUE ~ .data[[IEATools::template_cols$.values]] ) ) # Run through the assemble_phi_u_tables function completed_phi_u_table <- assemble_phi_u_tables(incomplete_phi_table, phi_constants_table, countries = "GHA") # Show that Charcoal stoves was filled completed_phi_u_table %>% dplyr::filter(.data[[IEATools::template_cols$machine]] == "Charcoal stoves")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.