You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adds three new parameters for calibrating the initial distribution of household wealth: initial_wealth_factor_mat, use_initial_BY_ratio, and initial_BY_ratio. The initial_wealth_factor_mat adjusts the initial distribution of household wealth relative to the steady-state distribution of household wealth. The other two parameters let the modeler adjust the initial distribution of household wealth by a factor that is based on a target value for the initial aggregate household wealth to GDP ratio. This is an alternative approach to PR Add initial_wealth_ratio to calibrate initial household wealth #1189 and PR Allow a supplied initial distribution of wealth in the transition #1209
Adds documentation in new last section of calibration.md on how to calibrate initial_wealth_factor_mat, use_initial_BY_ratio, and initial_BY_ratio parameters.
Removes the extraneous requirements.txt file. This file is clearly out-of-date, and I can't see anything that is calling it or using it. os is not a PyPI package, it is Python standard library. taxcalc is not a dependency of OG-Core. It omits the important dependencies listed in pyproject.toml. requirements.txt was added in commit 36727c7c (Aug 2019) as part of "add readthedocs files," and there's no .readthedocs.yaml in the repo anymore — docs now build via the Makefile and workflows. It's been touched twice since, last in f44266f2 (Jul 2024, "Added numba to requirements.txt"), which looks like someone updating it out of habit rather than because anything consumed it.
Fixed typos in output_talbes.py, pensions.py.
Updates the uv.lock.
The following table shows results from different combinations of parameters. All the folders and files are stored in this OG_WealthDist_PR Google Drive folder.
Script name
Description
base B_1/Y_1
base B_SS / Y_SS
run_ogcore_example.py
Baseline and reform from current master branch
3.4496
3.7954
run_init_w.py
Baseline and reform from PR branch with default params
3.1147
3.7954
run_init_w_usa.py
Baseline and reform from PR branch with B/Y USA target
?
3.7954
run_init_w_oldmatch.py
Baseline and reform from PR branch setting B/Y to match old
@rickecon Thanks for providing an alternative approach to that in PRs #1189 and #1209. Calibration of an initial net wealth to GDP ratio will be much easier than calibrating a ratio of initial wealth to steady state wealth.
Adds three new parameters for calibrating the initial distribution of household wealth: initial_wealth_factor_mat, use_initial_BY_ratio, and initial_BY_ratio. The initial_wealth_factor_mat adjusts the initial distribution of household wealth relative to the steady-state distribution of household wealth. The other two parameters let the modeler adjust the initial distribution of household wealth by a factor that is based on a target value for the initial aggregate household wealth to GDP ratio.
I would suggests the following modifications here:
The use_initial_BY_ratio parameter is unnecessary: it would be replaced by if initial_BY_ratio is None:.
For the same reason that an initial net wealth to GDP makes more sense than a ratio of initial to SS wealth, I think the distributional parameter (initial_wealth_factor_mat) should be calibrated without reference to the SS distribution. I would prose and alternative initial_wealth_distribution parameter that is an SxJ matrix showing the fraction of aggregate net worth held by each (s,j) cell in the population. Such an object could be calibrated in a straight-forward manner from survey data on household net worth (such as the Survey of Consumer Finances in the US) by simply finding the weighted sum of net wealth by age and income group and then dividing that by aggregate net wealth found in the survey (wealthinit.py in the OG-USA repo does essentially this).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR:
initial_wealth_factor_mat,use_initial_BY_ratio, andinitial_BY_ratio. Theinitial_wealth_factor_matadjusts the initial distribution of household wealth relative to the steady-state distribution of household wealth. The other two parameters let the modeler adjust the initial distribution of household wealth by a factor that is based on a target value for the initial aggregate household wealth to GDP ratio. This is an alternative approach to PR Add initial_wealth_ratio to calibrate initial household wealth #1189 and PR Allow a supplied initial distribution of wealth in the transition #1209calibration.mdon how to calibrateinitial_wealth_factor_mat,use_initial_BY_ratio, andinitial_BY_ratioparameters.requirements.txtfile. This file is clearly out-of-date, and I can't see anything that is calling it or using it.osis not a PyPI package, it is Python standard library.taxcalcis not a dependency of OG-Core. It omits the important dependencies listed inpyproject.toml.requirements.txtwas added in commit36727c7c(Aug 2019) as part of "add readthedocs files," and there's no.readthedocs.yamlin the repo anymore — docs now build via the Makefile and workflows. It's been touched twice since, last inf44266f2(Jul 2024, "Added numba to requirements.txt"), which looks like someone updating it out of habit rather than because anything consumed it.output_talbes.py,pensions.py.uv.lock.The following table shows results from different combinations of parameters. All the folders and files are stored in this
OG_WealthDist_PRGoogle Drive folder.run_ogcore_example.pyrun_init_w.pyrun_init_w_usa.pyrun_init_w_oldmatch.pycc: @jdebacker @marcelolafleur