Skip to content

mathiasandre/openfisca-france-data

 
 

Repository files navigation

OpenFisca France Data

Newsletter Twitter Slack CircleCI Coveralls Python PyPi

[EN] Introduction

OpenFisca is a versatile microsimulation free software. You can check the online documentation for more details.

This repository contains the OpenFisca-France-Data module, to work with OpenFisca-France and French survey or population data (ERFS and ERFS-FPR).

Here is the list of the managed data:

  • DADS, annual declaration of social data ;
  • ERFS, tax and social incomes survey ;
  • ERFS-FPR, ERFS production and research files ;
  • FELIN, sampled file of the income tax.

To transform your survey data into OpenFisca-France-Data formatted data you need to start with openfisca-survey-manager repository.

[FR] Introduction

OpenFisca est un logiciel libre de micro-simulation. Pour plus d'information, vous pouvez consulter la documentation officielle.

Ce dépôt contient le module OpenFisca-France-Data. Il permet d'associer l'usage d'OpenFisca-France à des données d'enquête ou de population sur la France.

Ceci est la liste les données traitées :

  • DADS, Déclaration Annuelle des Données Sociales ;
  • ERFS, Enquête Revenus Fiscaux et Sociaux ;
  • ERFS-FPR, ERFS fichiers de Production et de Recherche ;
  • FELIN, fichier échantillonné de l'impôt sur le revenu.

Afin de transformer vos données d'enquête en des données au format OpenFisca-France-Data, vous aurez à débuter par le dépôt openfisca-survey-manager.

Environment

OpenFisca-France-Data runs runs on Python 3.7. More recent versions should work, but are not tested.

Backward compatibility with Python 2.7 has been dropped since January 1st, 2019.

Installation

You can follow this installation if you want to:

  • run one of OpenFisca-France-Data scripts,
  • develop and contribute to OpenFisca-France-Data source code. Please be welcomed! :)

You will need to download and install the module locally:

git clone https://github.com/openfisca/openfisca-france-data.git
cd openfisca-france-data
make install

This should not display any error and end with:

Successfully installed OpenFisca-France-Data...

Execution

Let's say that you would like to format ERFS-FPR survey data into OpenFisca formatted data.

💡If you have other data managed by openfisca-france-data (like FELIN), change erfs_fpr by your data name in the next steps description.

You have already used openfisca-survey-manager. So, you have a config.ini file configured for this survey and a HDF5 file generated in the directory that you defined under output_directory in your config.ini.

For more information, you can see the configuration steps of openfisca-survey-manager README.

To run openfisca_france_data on ERFS-FPR survey data:

  1. Run the command:

    build-erfs-fpr -y 2013 -f dummy_data.h5

    You can change 2013 with any year you are interested in and for which you have ERFS-FPR data and dummy_data.h5 with any filename you want to export a flatenned dataframe.

    The script should end without error and display these lines:

    INFO:__main__:Script finished after...
    Closing remaining open files...
  2. Check the script results:

    • openfisca_erfs_fpr.json file generated in the directory you configured in your config.ini under collections_directory key.
    • input.h5 file generated in the directory you configured in your config.ini under output_directory key. This HDF5 file contains a group with two items:
      • an item with your data organised by OpenFisca-France Individu entity,
      • an item with your data organised by OpenFisca-France Menage entity.
    • Specific to ERFS-FPR script: dummy_data.h5 if you kept export_flattened_df_filepath option's value.

    The script also adds a openfisca_erfs_fpr key to your config.ini.

Testing

To run the entire test suite:

make test

Style

This repository adheres to a certain coding style, and we invite you to follow it for your contributions to be integrated promptly.

To run the style checker:

make check-style

To automatically style-format your code changes:

make format-style

To automatically style-format your code changes each time you commit:

touch .git/hooks/pre-commit
chmod +x .git/hooks/pre-commit

tee -a .git/hooks/pre-commit << END
#!/bin/sh
#
# Automatically format your code before committing.
exec make format-style
END

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 88.1%
  • R 10.4%
  • Shell 1.1%
  • Other 0.4%