Skip to content

added fallback logic in WDI code to get excel file if csv doesn't exist#1926

Open
niveditasing wants to merge 3 commits intodatacommonsorg:masterfrom
niveditasing:Added_fallback_wdi
Open

added fallback logic in WDI code to get excel file if csv doesn't exist#1926
niveditasing wants to merge 3 commits intodatacommonsorg:masterfrom
niveditasing:Added_fallback_wdi

Conversation

@niveditasing
Copy link
Contributor

No description provided.

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly improves the reliability of World Bank data ingestion by introducing a robust fallback mechanism. It ensures that if the initial attempt to download and parse data from a CSV ZIP archive fails, the system will automatically try to retrieve the data in Excel format. This enhancement makes the data pipeline more resilient to variations in the World Bank API's response, leading to more consistent data availability.

Highlights

  • Robust Data Ingestion: Implemented fallback logic to ensure data retrieval from the World Bank API even if the primary CSV download method fails or does not contain the expected data file.
  • Excel Fallback Mechanism: The system now attempts to download data in Excel format if the CSV download is unsuccessful or the required 'API' file is missing from the CSV ZIP archive.
  • Streamlined Data Processing: Refactored the data tidying and preprocessing steps to be shared between both CSV and Excel data sources, ensuring consistent data handling.
  • Improved Error Handling: Enhanced error handling for numeric conversion in pandas DataFrames by using errors='coerce' and dropping NaNs specifically from the 'Value' column.
  • Standardized File Paths: Updated file path construction for saving preprocessed CSVs to use os.path.join and os.makedirs for better cross-platform compatibility and directory creation.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request improves the robustness of the World Bank data import by adding a fallback to download an Excel file if the CSV download fails. The changes also include other nice improvements to data processing and file handling. I've provided two suggestions: one to make the new fallback logic more resilient to network issues, and another to improve the performance of the CSV parsing logic.

@niveditasing niveditasing changed the title added fallback logic in code to get excel file if csv doesn't exist added fallback logic in WDI code to get excel file if csv doesn't exist Mar 20, 2026
@niveditasing niveditasing requested a review from saanikaaa March 23, 2026 08:41
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