Skip to content

Ajout des fichiers de script API pour la partie electricity (capacity + generation) #40

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

Open
wants to merge 10 commits into
base: main
Choose a base branch
from

Conversation

Yh-Cherif
Copy link
Collaborator

No description provided.

Copy link

vercel bot commented Mar 29, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
front ✅ Ready (Inspect) Visit Preview 💬 Add feedback Apr 24, 2025 7:52pm

Former Yugoslavia (YUG)
South Africa (ZAF)
Zambia (ZMB)
Zimbabwe (ZWE)"""
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cette liste de pays n'est pas pratique à maintenir. Existe-t-il un moyen de récupérer tous les pays via l'API ou bien existe-t-il une autre API en mesure de lister tous les pays existants dans le référentiel EIA ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

J'ai effectivement pensé à récupérer d'un coup tous les pays en les intégrant à l'URL, cependant l'API est limitée à 5.000 lignes maximum par appel (afin d'éviter de surcharger leurs serveurs). Utiliser ce type de liste (qui est un copié-collé de l'api manuelle) est la seule solution que j'ai trouvé.

image

South Africa (ZAF)
Zambia (ZMB)
Zimbabwe (ZWE)"""
countries = countries.replace('\n',' ')
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pourquoi ne pas stocker les pays directement sous format liste ? Possible d'utiliser des ctrl+R pour remplacer les sauts de lignes par des virgules et guillements.

#### Requesting the API ####
df_electricity = pd.concat([api_call(code, url) for code in country_codes])

return df_electricity
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Il faudrait renommer df_electricity par df_eia car de ma compréhension, il est possible de récupérer effectivement les données electricité mais également n'importe quelle statistique issue de l'EIA.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fichier à supprimer car celui-ci ne doit pas être versionné.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mais preneur d'une comparaison avec le fichier qui se trouve dans server/data pour vérifier que le passage à l'API n'a pas occasioné de changements dans les données finales.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fichier à supprimer car celui-ci ne doit pas être versionné.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Yh-Cherif, super pour l'ajout de ce nouveau fichier 💯 Pour bien finaliser la tâche, je t'invite à effectuer la vérification et la comparaison des données de bout en bout. Actuellement, le fichier WORLD_ENERGY_HISTORY_electricity_generation_prod n'a pas d'équivalent dans server/data. Le nom est trompeur mais c'es dans le fichier IEA_API_electricity_by_energy_family_prepared_prod qu'il va falloir remplacer les données :)

En effectuant la comparaison des données, on observe pas mal de différences entre le fichier original et le nouveau fichier. Pourrais-tu effectuer une vérification des données et corriger ton nouveau fichier de façon à ce qu'il se rapproche le plus du format du fichier original ? Je te laisse le soin d'effectuer cette vérification. Voici ce que j'ai relevé pour le moment :

  • renommer la colonne power en "final_energy".
  • renommer la colonne "power_unit" en "final_energy_unit"
  • verifier l'unité (TWh dans ancien fichier et TW dans nouveau fichier).
  • les catégories dans "energy_family" ne correspondent pas forcément. Ce n'est pas forcément iun problème car les nouvelles catégories sont potentiellement plus pertinentes que les anciennes. Mais à vérifier :)
  • vérifier les ordres de grandeur des données.
  • vérifier les pays apparus et disparus.

Bon courage !

@Yh-Cherif
Copy link
Collaborator Author

Yh-Cherif commented Apr 24, 2025

Hello @tvienne, j'ai pris en compte toutes tes remarques.

Concernant les modifications et le format du nouveau fichier :

  • Les colonnes ont été modifiées pour la partie génération ("final_energy" et "final_energy_unit").
  • Dans les données de l'API, les données sont en BKWh (billion KWh) = TWh et non pas TW effectivement.
  • Les catégories dans "energy_family" ont été mises à jour pour faire matcher avec les anciennes données (comme convenu sur Slack).
  • Les ordres de grandeur ont l'air similaires mais l'on observe quelques modifications (corrections, comme pour le cas des données de capacité) (cf. images).
  • Dans le nouveau fichier, on compte 102 pays supplémentaires par rapport à l'ancien fichier. Il existe deux "pays" ayant un format différent : EU28 -> EU27 et NZ -> New Zealand.
  • Il y a également de nouvelles données qui n'étaient pas présentes auparavant (cf. images)

Voici quelques screens de comparaisons que j'ai pu faire :

image

image

image

De plus, j'ai retiré le fichier WORLD_ENERGY_HISTORY_electricity_generation_prod.csv du dossier server/data.

S'il persiste encore des points d'ombre, n'hésite pas à me le signaler ! 😄

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.

2 participants