pudl.output.pudltabl module¶
This module provides a class enabling tabular compilations from the PUDL DB.
Many of our potential users are comfortable using spreadsheets, not databases, so we are creating a collection of tabular outputs that contain the most useful core information from the PUDL data packages, including additional keys and human readable names for the objects (utilities, plants, generators) being described in the table.
These tabular outputs can be joined with each other using those keys, and used as a data source within Microsoft Excel, Access, R Studio, or other data analysis packages that folks may be familiar with. They aren’t meant to completely replicate all the data and relationships contained within the full PUDL database, but should serve as a generally usable set of PUDL data products.
The PudlTabl class can also provide access to complex derived values, like the generator and plant level marginal cost of electricity (MCOE), which are defined in the analysis module.
In the long run, this is a probably a kind of prototype for pre-packaged API outputs or data products that we might want to be able to provide to users a la carte.
Todo
Return to for update arg and returns values in functions below
-
class
pudl.output.pudltabl.
PudlTabl
(pudl_engine, freq=None, start_date=None, end_date=None, rolling=False)[source]¶ Bases:
object
A class for compiling common useful tabular outputs from the PUDL DB.
-
bf_eia923
(update=False)[source]¶ Pull EIA 923 boiler fuel consumption data.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
bga
(update=False)[source]¶ Pull the more complete EIA/PUDL boiler-generator associations.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
bga_eia860
(update=False)[source]¶ Pull a dataframe of boiler-generator associations from EIA 860.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
capacity_factor
(update=False, min_cap_fact=None, max_cap_fact=None)[source]¶ Calculate and return generator level capacity factors.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
fbp_ferc1
(update=False)[source]¶ Summarize FERC Form 1 fuel usage by plant.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
frc_eia923
(update=False)[source]¶ Pull EIA 923 fuel receipts and costs data.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
fuel_cost
(update=False)[source]¶ Calculate and return generator level fuel costs per MWh.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
fuel_ferc1
(update=False)[source]¶ Pull the FERC Form 1 steam plants fuel consumption data.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
gen_eia923
(update=False)[source]¶ Pull EIA 923 net generation data by generator.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
gens_eia860
(update=False)[source]¶ Pull a dataframe describing generators, as reported in EIA 860.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
gf_eia923
(update=False)[source]¶ Pull EIA 923 generation and fuel consumption data.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
hr_by_gen
(update=False)[source]¶ Calculate and return generator level heat rates (mmBTU/MWh).
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
hr_by_unit
(update=False)[source]¶ Calculate and return generation unit level heat rates.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
mcoe
(update=False, min_heat_rate=5.5, min_fuel_cost_per_mwh=0.0, min_cap_fact=0.0, max_cap_fact=1.5)[source]¶ Calculate and return generator level MCOE based on EIA data.
Eventually this calculation will include non-fuel operating expenses as reported in FERC Form 1, but for now only the fuel costs reported to EIA are included. They are attibuted based on the unit-level heat rates and fuel costs.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
min_heat_rate – lowest plausible heat rate, in mmBTU/MWh. Any MCOE records with lower heat rates are presumed to be invalid, and are discarded before returning.
min_cap_fact – minimum generator capacity factor. Generator records with a lower capacity factor will be filtered out before returning. This allows the user to exclude generators that aren’t being used enough to have valid.
min_fuel_cost_per_mwh – minimum fuel cost on a per MWh basis that is required for a generator record to be considered valid. For some reason there are now a large number of $0 fuel cost records, which previously would have been NaN.
max_cap_fact – maximum generator capacity factor. Generator records with a lower capacity factor will be filtered out before returning. This allows the user to exclude generators that aren’t being used enough to have valid.
- Returns
a compilation of generator attributes, including fuel costs per MWh.
- Return type
-
own_eia860
(update=False)[source]¶ Pull a dataframe of generator level ownership data from EIA 860.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
plant_in_service_ferc1
(update=False)[source]¶ Pull the FERC Form 1 Plant in Service Table.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
plants_eia860
(update=False)[source]¶ Pull a dataframe of plant level info reported in EIA 860.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
plants_hydro_ferc1
(update=False)[source]¶ Pull the FERC Form 1 Hydro Plants Table.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
plants_pumped_storage_ferc1
(update=False)[source]¶ Pull the FERC Form 1 Pumped Storage Table.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
plants_small_ferc1
(update=False)[source]¶ Pull the FERC Form 1 Small Plants Table.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
plants_steam_ferc1
(update=False)[source]¶ Pull the FERC Form 1 steam plants data.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
pu_eia860
(update=False)[source]¶ Pull a dataframe of EIA plant-utility associations.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
pu_ferc1
(update=False)[source]¶ Pull a dataframe of FERC plant-utility associations.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-
purchased_power_ferc1
(update=False)[source]¶ Pull the FERC Form 1 Purchased Power Table.
- Parameters
update (bool) – If true, re-calculate the output dataframe, even if a cached version exists.
- Returns
a denormalized table for interactive use.
- Return type
-