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
Bug : Pour l'année 2016, le code taxipp\tests\ppa\memoire_francois_TdO renvoyait une erreur :
File "C:\Users\fteys\AppData\Roaming\Python\Python37\site-packages\pandas\core\indexes\base.py", line 2897, in get_loc raise KeyError(key) from err KeyError: 'salaire_de_base'
Dans la branche openfisca-france-data (bug_salaire_de_base_erfs_2016) j'ai modifié le fichier openfisca_france_data/erfs_fpr/input_data_builder/step_03_variables_individuelles.py pour traquer l'origine de l'erreur à la création de la variable salaire_de_base.
J'ai ajouté deux print(individus['salaire_de_base']) : u dans la fonction qui créé cette variable et un autre juste après l'appel à la fonction qui crée cette variable.
Le bug c'est que le premier print dans la fonction arrive à imprimer individus['salaire_de_base'], alors que le second print renvoie l'erreur :
File "c:\github\openfisca-france-data\openfisca_france_data\erfs_fpr\input_data_builder\step_03_variables_individuelles.py", line 129, in build_variables_individuelles
print("juste après la fonction create_variables_individuelles \n \n \n", individus['salaire_de_base'])
File "C:\Users\fteys\AppData\Roaming\Python\Python37\site-packages\pandas\core\frame.py", line 2906, in getitem
indexer = self.columns.get_loc(key)
File "C:\Users\fteys\AppData\Roaming\Python\Python37\site-packages\pandas\core\indexes\base.py", line 2897, in get_loc
raise KeyError(key) from err
KeyError: 'salaire_de_base'
Tout se passe comme si pour l'année 2016 la création de la variable salaire_de_base se faisait localement dans la fonction qui la crée mais pas globalement. Alors que pour l'année 2015 les deux prints réussissent à afficher individus['salaire_de_base']), aucune erreur ne survient et le code fonctionne.
Question : J'ai l'impression qu'un fix serait de rajouter un "return individus" dans la fonction qui crée salaire_de_base pour bien récupérer la version modifiée d'individus en sortie, mais je ne comprends pas pourquoi il y aurait besoin de faire cela seulement en 2016 et pas pour les autres années.
J'ai testé cette modification et elle semble fonctionner. Je la rajoute dans:
Est-ce que vous comprenez d'où vient le bug et est-ce que vous pensez que le fix que j'ai proposé est une manière correcte de le corriger ? @benjello@claireleroy
The text was updated successfully, but these errors were encountered:
Contexte :
J'utilise les versions suivantes :
-openfisca-core (35.0.4)
-openfisca-france (48.15.1)
-openfisca-france-data (bug_salaire_de_base_erfs_2016)
-openfisca-survey-manager (csv)
-taxipp (ppa_biactif)
Bug : Pour l'année 2016, le code taxipp\tests\ppa\memoire_francois_TdO renvoyait une erreur :
File "C:\Users\fteys\AppData\Roaming\Python\Python37\site-packages\pandas\core\indexes\base.py", line 2897, in get_loc raise KeyError(key) from err KeyError: 'salaire_de_base'
Dans la branche openfisca-france-data (bug_salaire_de_base_erfs_2016) j'ai modifié le fichier openfisca_france_data/erfs_fpr/input_data_builder/step_03_variables_individuelles.py pour traquer l'origine de l'erreur à la création de la variable salaire_de_base.
J'ai ajouté deux print(individus['salaire_de_base']) : u dans la fonction qui créé cette variable et un autre juste après l'appel à la fonction qui crée cette variable.
Le bug c'est que le premier print dans la fonction arrive à imprimer individus['salaire_de_base'], alors que le second print renvoie l'erreur :
File "c:\github\openfisca-france-data\openfisca_france_data\erfs_fpr\input_data_builder\step_03_variables_individuelles.py", line 129, in build_variables_individuelles
File "C:\Users\fteys\AppData\Roaming\Python\Python37\site-packages\pandas\core\frame.py", line 2906, in getitem
indexer = self.columns.get_loc(key)
File "C:\Users\fteys\AppData\Roaming\Python\Python37\site-packages\pandas\core\indexes\base.py", line 2897, in get_loc
raise KeyError(key) from err
KeyError: 'salaire_de_base'
Tout se passe comme si pour l'année 2016 la création de la variable salaire_de_base se faisait localement dans la fonction qui la crée mais pas globalement. Alors que pour l'année 2015 les deux prints réussissent à afficher individus['salaire_de_base']), aucune erreur ne survient et le code fonctionne.
Question : J'ai l'impression qu'un fix serait de rajouter un "return individus" dans la fonction qui crée salaire_de_base pour bien récupérer la version modifiée d'individus en sortie, mais je ne comprends pas pourquoi il y aurait besoin de faire cela seulement en 2016 et pas pour les autres années.
J'ai testé cette modification et elle semble fonctionner. Je la rajoute dans:
openfisca-france-data (fix_bug_salaire_de_base_erfs_2016)
Est-ce que vous comprenez d'où vient le bug et est-ce que vous pensez que le fix que j'ai proposé est une manière correcte de le corriger ?
@benjello @claireleroy
The text was updated successfully, but these errors were encountered: