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

Adding a plot of the historic population #2

Open
alan-man opened this issue Nov 26, 2021 · 4 comments
Open

Adding a plot of the historic population #2

alan-man opened this issue Nov 26, 2021 · 4 comments

Comments

@alan-man
Copy link

Hello,
Thank you for making this python version of world3.
I think it would be useful to add a option in order to plot the historic population next to the predicted population.
Would you mind if I add an option to do so and prepare a pull request ?
Best,
A.
below a draft (historic population in purple)
draft
:

@alan-man alan-man changed the title Adding a plot of real population Adding a plot of the historic population Nov 26, 2021
@cvanwynsberghe
Copy link
Owner

Hello @alan-man,

Your idea is relevant, since many papers compare real data with World3 outputs. Do you already have an idea in mind to implement this?


N.B.

After personally putting this idea in the pipeline a few months ago, I finally preferred not to directly add real data inside the core of pyworld3 for different reasons:

  • the variety of the sources (eg for the population, there is UN, US Census Bureau, and probably more that I do not know), meaning that each time serie needs at least a good documentation indicating the sources.
  • there are potentially plenty of other variables to be compared (even not talking about proxies)
  • the goal of pyworld3 core is to reproduce World3 simulations. And there is still much job to do there by the way ;-).

The World3 vs real data seems to be a complete side project by itself, with potential evolutions.
It could stem in different forms:

  • creating a new github project
  • creating something like a submodule in pyworld3 which contains the documented data, + a new class for visualisation and comparison (not clear to me for the moment)
  • or why not simply starting with a script like world3_vs_real, + a new json file containing the real data?

@alan-man
Copy link
Author

Hello @cvanwynsberghe,
Thank you for your answer.
I have already searched and got the population data, and i have not found too many divergent sources of data, considering we are speaking about the recent world wide population.
In my POC, I have used data from world bank : https://data.worldbank.org/indicator/SP.POP.TOTL

The best form seems to be indeed not to touch the core world3 module, but just to add a world3_vs_real.py script, plus a data file (json or csv), like you proposed.

What do you think ?
Best,
A

@WilliamTambellini
Copy link

Hi @cvanwynsberghe
What @alan-man proposes seems to be confirmed as a good idea : see this recent paper comparing world3 predictions vs empirical data:
"Update to Limits to Growth: Comparing the World3 Model with Empirical Data"
https://dash.harvard.edu/handle/1/37364868
https://advisory.kpmg.us/content/dam/advisory/en/pdfs/2021/yale-publication.pdf
The author, Gaya Herrington used

2.3.1. Population. I used figures from the Population Division of the United Nations Department of Economic & Social Affairs (UN DESA PD, 2019). 
Their population series includes estimates for 2020, which I used to compare against the LtG 2020 values. 
Annual population figures can also be found on the World Bank Open Data website (WB, 2019a). 
Both sites mention national agencies and international organizations as their sources, such as Eurostat, the US Census Bureau, and census publications from national statistical offices.

which are the same sources that @alan-man proposes to use (apparently).
Kind

@cvanwynsberghe
Copy link
Owner

cvanwynsberghe commented Feb 23, 2022

Hi @WilliamTambellini & @alan-man,

I also think it is a really good idea. Just a few remarks:

  • There are other time series that could be integrated to other variables, and also different versions/sources of time series for one given variable. Could you imagine a code that could be scalable to future upgrades for that (e.g. class, structure)?
  • could you somehow provide the source of the time serie to the user?

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

No branches or pull requests

3 participants