Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Module to update taxcalc grow factors #117

Merged
merged 1 commit into from
Jul 26, 2024

Conversation

jdebacker
Copy link
Member

This PR adds a module with utilities to update the growth factors used to extrapolate micro data in the Tax-Calculator model. The functions use output from OG-USA to update the growth factors to reflect macroeconomic outcome consistent with a particular OG-USA simulation.

@codecov-commenter
Copy link

Codecov Report

Attention: Patch coverage is 0% with 42 lines in your changes missing coverage. Please review.

Project coverage is 45.12%. Comparing base (acb734c) to head (a8c71a6).

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #117      +/-   ##
==========================================
- Coverage   46.51%   45.12%   -1.40%     
==========================================
  Files          17       18       +1     
  Lines        1363     1405      +42     
==========================================
  Hits          634      634              
- Misses        729      771      +42     
Flag Coverage Δ
unittests 45.12% <0.00%> (-1.40%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Coverage Δ
ogusa/growfactor_update.py 0.00% <0.00%> (ø)

@rickecon
Copy link
Member

@jdebacker. Is this to be used for one iteration between taxcalc and ogusa? Tell me if my understanding of what this does is correct. The changed function in this PR simply creates OG-USA growth factors that are analogous to those from taxcalc. But below is my understanding of what that would be used for.

Current functionality:

  • Baseline: reads in estimated tax functions from taxcalc over the budget window using the taxcalc grow factors. These taxcalc grow factors are not consistent with growth in various income sources in OG-USA.
  • Reform: Create reform by changing taxcalc parameters, read in new estimated tax functions from taxcalc that utilize the same taxcalc grow factors, which might are now inconsistent with the change in growth from the OG-USA model for two reasons. (1) The baseline growfactors from taxcalc do not match the baseline growth rates in OG-USA. (2) The OG-USA growth rates change due to taxcalc parameter changes.

New functionality:

  • Baseline (new): reads in estimated tax functions from taxcalc over the budget window using the taxcalc grow factors. Runs the OG-USA baseline equilibrium transition path, calculates new grow factors from OG-USA, feeds those OG-USA growth factors back to taxcalc, reruns taxcalc with the new growth factors and gets the new estimated tax functions, reruns OG-USA baseline with the new tax functions.
  • Reform (same): Create reform by changing taxcalc and/or OG-USA parameters, read in new estimated tax functions from taxcalc (if tax calc parameters changed), calculate new grow factors from OG-USA, feed those OG-USA growth factors back to taxcalc, reruns taxcalc with the new growth factors and gets the new estimated tax functions, reruns OG-USA with the new tax functions.

@jdebacker
Copy link
Member Author

@rickecon The utilities in this PR may be used for the purposes you suggest. However, the use case I've had so far is to simply update the growth factors for data used in taxcalc so that the growth factors are consistent with an alternative baselined (i.e., not a current law baseline as existing growth factors based on CBO forecasts assume). These utilities can be used to update those "initial" growth factors to be consistent with an alternative policy baseline by simulating that alternative in OG-USA and using the percentage changes between that simulation and the current law baseline.

@rickecon
Copy link
Member

@jdebacker. Is this ready to merge? The code looks good to me, although there are no tests.

@jdebacker
Copy link
Member Author

@rickecon Yes, not like me to have some tests. But I wanted to get this done quick and not sure we'll have many users outside e me (I used the model to create the growfactors_ext.csv file for Tax-Calculator).

Let me see if I can write a few quick tests today. I'll get back to you with ah thumbs up to merge (with or without those tests) later today.

@rickecon rickecon merged commit 78eebb8 into PSLmodels:master Jul 26, 2024
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants