Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/pudl/extract/rus12.py
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ def _raw_rus12__page(raw_rus12__all_dfs: dict[str, pd.DataFrame]):
"loan_guarantees",
"non_utility_plant",
"external_financial_risk_ratio",
"utility_plant",
"utility_plant_changes",
"utility_plant_accumulated_depreciation",
]
]
32 changes: 32 additions & 0 deletions src/pudl/metadata/enums.py
Original file line number Diff line number Diff line change
Expand Up @@ -1082,3 +1082,35 @@
"transmission_line",
"total",
]

UTILITY_PLANT_GROUP_RUS7 = ["utility_plant_in_service", "total_utility_plant"]
UTILITY_PLANT_ITEM_RUS7 = [
"construction_work_in_progress",
"total",
"all_other",
"distribution",
"general",
"headquarters",
"intangibles",
"transmission",
"regional_transmission_and_market_operation",
]

UTILITY_PLANT_GROUP_RUS12 = [
"intangible_plant",
"production_plant",
"transmission_plant",
"distribution_plant",
"electric_plant_in_service", # total = all the plants above totals + 2 sub-components
"utility_plant_in_service", # total = electric_plant_in_service + 7 sub-components
"total_utility_plant", # total = utility_plant_in_service + 1 sub-components
]

DEPRECIATION_ITEMS_MISC_RUS12 = [
"annual_accrual_charged_to_expense",
"annual_accrual_charged_to_other_accounts",
"book_cost_property_retired",
"removal_cost_property_retired",
"salvage_material_from_property_retired",
"renewal_and_replacement_cost",
]
119 changes: 119 additions & 0 deletions src/pudl/metadata/resources/rus12.py
Original file line number Diff line number Diff line change
Expand Up @@ -700,6 +700,125 @@
},
}

RESOURCE_METADATA_BASE_DRAFT = {
"core_rus12__yearly_utility_plant_changes": {
"description": {
"additional_summary_text": ("changes in utility plant"),
"additional_source_text": "(Part H - Section A)",
"usage_warnings": ["aggregation_hazard"],
"additional_details_text": (
"There are a few layers of nesting in this table, which can be distinguished by "
"the categories in the `utility_plant_group` column:\n\n"
" * intangible_plant: only has one total utility_plant_item\n"
" * production_plant: has several sub-component utility_plant_item and a standard total\n"
" * transmission_plant: has several sub-component utility_plant_item and a standard total\n"
" * distribution_plant: has several sub-component utility_plant_item and a standard total\n"
" * electric_plant_in_service: has two sub-components and a total which includes those sub-components and the totals of the above categories\n"
" * utility_plant_in_service: has several sub-components and the total is the sum of those sub-components as well as the total of electric_plant_in_service\n"
" * total_utility_plant: has one sub-component and the total is the sum of the sub-component and utility_plant_in_service\n\n"
),
},
"schema": {
"fields": [
"report_date",
"borrower_id_rus",
"utility_plant_group", # enum UTILITY_PLANT_GROUP_RUS12
"utility_plant_item", # enum bigger group
"retirements",
"additions",
"adjustments_and_transfers",
"ending_balance",
"is_total",
],
"primary_key": [
"report_date",
"borrower_id_rus",
"utility_plant_group",
"utility_plant_item",
],
},
"sources": ["rus12"],
"etl_group": "rus12",
"field_namespace": "rus",
},
"core_rus12__yearly_accumulated_depreciation_changes": {
"description": {
"additional_summary_text": ("changes in accumulated depreciation."),
"additional_source_text": "(Part H - Section B)",
},
"schema": {
"fields": [
"report_date",
"borrower_id_rus",
"depreciation_and_amortization_group",
"depreciation_and_amortization_item",
"comp_rate",
"accruals",
"retirements_less_net_salvage",
"adjustments_and_transfers",
"ending_balance",
"is_total",
],
"primary_key": [
"report_date",
"borrower_id_rus",
"utility_plant_group",
"utility_plant_item",
],
},
"sources": ["rus12"],
"etl_group": "rus12",
"field_namespace": "rus",
},
"core_rus12__yearly_accumulated_depreciation": { # QUESTION: is this a misc table?
"description": {
"additional_summary_text": ("accumulated depreciation."),
"additional_source_text": "(Part H - 2nd part of Section B)",
"additional_details_text": (
"This is the second half of the depreciation table. "
"It includes ending balances of six depreciation and amortization values."
),
},
"schema": {
"fields": [
"report_date",
"borrower_id_rus",
"depreciation_and_amortization_item",
"ending_balance",
],
"primary_key": [
"report_date",
"borrower_id_rus",
"depreciation_and_amortization_item",
],
},
"sources": ["rus12"],
"etl_group": "rus12",
"field_namespace": "rus",
},
"core_rus12__yearly_non_utility_plant_changes": {
"description": {
"additional_summary_text": ("changes in non-utility plant."),
"additional_source_text": "(Part H - Section C)",
},
"schema": {
"fields": [
"report_date",
"borrower_id_rus",
"non_utility_plant_item", # non_utility_property| provision_for_depreciation_and_amortization_of_non_utility_plant
"additions",
"retirements",
"adjustments_and_transfers",
"ending_balance",
],
"primary_key": ["report_date", "borrower_id_rus", "non_utility_plant_item"],
},
"sources": ["rus12"],
"etl_group": "rus12",
"field_namespace": "rus",
},
}


RESOURCE_METADATA = RESOURCE_METADATA_BASE | core_to_out_harvested_resources(
HARVESTED_CORE_TABLES_RUS12,
Expand Down
31 changes: 31 additions & 0 deletions src/pudl/metadata/resources/rus7.py
Original file line number Diff line number Diff line change
Expand Up @@ -668,6 +668,37 @@
},
}

RESOURCE_METADATA_BASE_DRAFT = {
"core_rus7__yearly_utility_plant_changes": {
"description": {
"additional_summary_text": ("changes in utility plant"),
"additional_source_text": "(Part E)",
"usage_warnings": ["aggregation_hazard"],
},
"schema": {
"fields": [
"report_date",
"borrower_id_rus",
"utility_plant_group", # enum UTILITY_PLANT_GROUP_RUS7
"utility_plant_item", # enum bigger group
"retirements",
"additions",
"adjustments_and_transfers",
"ending_balance",
"is_total",
],
"primary_key": [
"report_date",
"borrower_id_rus",
"utility_plant_group",
"utility_plant_item",
],
},
"sources": ["rus7"],
"etl_group": "rus7",
"field_namespace": "rus",
},
}

RESOURCE_METADATA = RESOURCE_METADATA_BASE | core_to_out_harvested_resources(
HARVESTED_CORE_TABLES_RUS7,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
year_index,borrower_id_rus,borrower_name_rus,report_year,report_month,non_utility_plant_additions,non_utility_plant_retirements,non_utility_plant_adjustments_and_transfers,non_utility_plant_ending_balance,provision_for_depreciation_and_amortization_of_non_utility_plant_additions,provision_for_depreciation_and_amortization_of_non_utility_plant_retirements,provision_for_depreciation_and_amortization_of_non_utility_plant_adjustments,provision_for_depreciation_and_amortization_of_non_utility_plant_ending_balance
year_index,borrower_id_rus,borrower_name_rus,report_year,report_month,property_additions,property_retirements,property_adjustments_and_transfers,property_ending_balance,provision_for_depreciation_and_amortization_additions,provision_for_depreciation_and_amortization_retirements,provision_for_depreciation_and_amortization_adjustments_and_transfers,provision_for_depreciation_and_amortization_ending_balance
2006,rusborrowerid,borrowername,year,period,nonutilityadditions,nonutilityretirements,nonutilityadjustments,nonutilitybalanceendofyear,provisionadditions,provisionretirements,provisionadjustments,provisionbalanceendofyear
2007,rusborrowerid,borrowername,year,period,nonutilityadditions,nonutilityretirements,nonutilityadjustments,nonutilitybalanceendofyear,provisionadditions,provisionretirements,provisionadjustments,provisionbalanceendofyear
2008,rusborrowerid,borrowername,year,period,nonutilityadditions,nonutilityretirements,nonutilityadjustments,nonutilitybalanceendofyear,provisionadditions,provisionretirements,provisionadjustments,provisionbalanceendofyear
Expand Down
Loading