Skip to content

Commit

Permalink
Add uprating table
Browse files Browse the repository at this point in the history
  • Loading branch information
nikhilwoodruff committed Aug 18, 2024
1 parent 230553c commit 737a792
Showing 1 changed file with 33 additions and 0 deletions.
33 changes: 33 additions & 0 deletions policyengine_us_data/utils/uprating.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
from policyengine_core.model_api import Variable
import pandas as pd

START_YEAR = 2020
END_YEAR = 2034

def create_policyengine_uprating_factors_table():
from policyengine_us.system import system

df = pd.DataFrame()

variable_names = []
years = []
index_values = []

for variable in system.variables.values():
if variable.uprating is not None:
parameter = system.parameters.get_child(variable.uprating)
start_value = parameter(START_YEAR)
for year in range(START_YEAR, END_YEAR):
variable_names.append(variable.name)
years.append(year)
index_values.append(round(parameter(year) / start_value, 3))

df["Variable"] = variable_names
df["Year"] = years
df["Value"] = index_values

# Convert to there is a column for each year
df = df.pivot(index="Variable", columns="Year", values="Value")

return df.sort_values("Variable")

0 comments on commit 737a792

Please sign in to comment.