pudl.output.ferc1

Functions for pulling FERC Form 1 data out of the PUDL DB.

Module Contents

Functions

plants_utils_ferc1(pudl_engine)

Build a dataframe of useful FERC Plant & Utility information.

plants_steam_ferc1(pudl_engine)

Select and joins some useful fields from the FERC Form 1 steam table.

fuel_ferc1(pudl_engine)

Pull a useful dataframe related to FERC Form 1 fuel information.

fuel_by_plant_ferc1(pudl_engine, thresh=0.5)

Summarize FERC fuel data by plant for output.

plants_small_ferc1(pudl_engine)

Pull a useful dataframe related to the FERC Form 1 small plants.

plants_hydro_ferc1(pudl_engine)

Pull a useful dataframe related to the FERC Form 1 hydro plants.

plants_pumped_storage_ferc1(pudl_engine)

Pull a dataframe of FERC Form 1 Pumped Storage plant data.

purchased_power_ferc1(pudl_engine)

Pull a useful dataframe of FERC Form 1 Purchased Power data.

plant_in_service_ferc1(pudl_engine)

Pull a dataframe of FERC Form 1 Electric Plant in Service data.

all_plants_ferc1(pudl_engine)

Combine the steam, small generators, hydro, and pumped storage tables.

Attributes

logger

pudl.output.ferc1.logger[source]
pudl.output.ferc1.plants_utils_ferc1(pudl_engine)[source]

Build a dataframe of useful FERC Plant & Utility information.

Parameters

pudl_engine (sqlalchemy.engine.Engine) – Engine for connecting to the PUDL database.

Returns

A DataFrame containing useful FERC Form 1 Plant and Utility information.

Return type

pandas.DataFrame

pudl.output.ferc1.plants_steam_ferc1(pudl_engine)[source]

Select and joins some useful fields from the FERC Form 1 steam table.

Select the FERC Form 1 steam plant table entries, add in the reporting utility’s name, and the PUDL ID for the plant and utility for readability and integration with other tables that have PUDL IDs.

Also calculates capacity_factor (based on net_generation_mwh & capacity_mw)

Parameters

pudl_engine (sqlalchemy.engine.Engine) – Engine for connecting to the PUDL database.

Returns

A DataFrame containing useful fields from the FERC Form 1 steam table.

Return type

pandas.DataFrame

pudl.output.ferc1.fuel_ferc1(pudl_engine)[source]

Pull a useful dataframe related to FERC Form 1 fuel information.

This function pulls the FERC Form 1 fuel data, and joins in the name of the reporting utility, as well as the PUDL IDs for that utility and the plant, allowing integration with other PUDL tables.

Useful derived values include:

  • fuel_consumed_mmbtu (total fuel heat content consumed)

  • fuel_consumed_total_cost (total cost of that fuel)

Parameters

pudl_engine (sqlalchemy.engine.Engine) – Engine for connecting to the PUDL database.

Returns

A DataFrame containing useful FERC Form 1 fuel information.

Return type

pandas.DataFrame

pudl.output.ferc1.fuel_by_plant_ferc1(pudl_engine, thresh=0.5)[source]

Summarize FERC fuel data by plant for output.

This is mostly a wrapper around pudl.transform.ferc1.fuel_by_plant_ferc1() which calculates some summary values on a per-plant basis (as indicated by utility_id_ferc1 and plant_name_ferc1) related to fuel consumption.

Parameters
  • pudl_engine (sqlalchemy.engine.Engine) – Engine for connecting to the PUDL database.

  • thresh (float) – Minimum fraction of fuel (cost and mmbtu) required in order for a plant to be assigned a primary fuel. Must be between 0.5 and 1.0. default value is 0.5.

Returns

A DataFrame with fuel use summarized by plant.

Return type

pandas.DataFrame

pudl.output.ferc1.plants_small_ferc1(pudl_engine)[source]

Pull a useful dataframe related to the FERC Form 1 small plants.

pudl.output.ferc1.plants_hydro_ferc1(pudl_engine)[source]

Pull a useful dataframe related to the FERC Form 1 hydro plants.

pudl.output.ferc1.plants_pumped_storage_ferc1(pudl_engine)[source]

Pull a dataframe of FERC Form 1 Pumped Storage plant data.

pudl.output.ferc1.purchased_power_ferc1(pudl_engine)[source]

Pull a useful dataframe of FERC Form 1 Purchased Power data.

pudl.output.ferc1.plant_in_service_ferc1(pudl_engine)[source]

Pull a dataframe of FERC Form 1 Electric Plant in Service data.

pudl.output.ferc1.all_plants_ferc1(pudl_engine)[source]

Combine the steam, small generators, hydro, and pumped storage tables.

While this table may have many purposes, the main one is to prepare it for integration with the EIA Master Unit List (MUL). All subtables included in this output table must have pudl ids. Table prepping involves ensuring that the individual tables can merge correctly (like columns have the same name) both with each other and the EIA MUL.