-
Notifications
You must be signed in to change notification settings - Fork 415
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
Add module to read/interpret NCEI storm database #1962
base: main
Are you sure you want to change the base?
Conversation
Start work on a module for reading and interpreting the NCEI (formerly NCDC) storm database. Work in progress.
Add a module with various functions to read and interpret events from the NCEI storms database at https://www.ncdc.noaa.gov/stormevents/
When reading NCEI storm data, don't fail on bad or old data, in particular for timezones this is a concern. Add test cases for all timezones found in the NCEI storm data base, including typos and erroneaus data. Adapt the implementation of timezone interpretation to use the 3-letter code (always available) rather than the 1-digit hour offset (not always available).
Improve the documentation on reading storms from the NCEI database. Improve the unit tests to cover additional cases.
I've added API documentation, but when I |
Clarify some of the documentation in the new storm reading module.
In the storm db module, replace double quotes by single quotes in most cases, except in docstrings.
Thanks for this contribution! I've yet to do a review, but am glad to see this coming in. To see your new docstrings added to the generated docs, you can import and use our |
For the new NCEI storms DB reading functions, add the public functions to the ``@exporter.export`` decorator and expose them in the parent ``io`` package.
Varous small docstring and import order fixes to satisfy flake8 with all its varieties.
The new storms reading database needs fsspec. Add this package to the requirements.
I don't know how to resolve the issue raised by the Codacy Static Code Analysis — it seems to arise from the magic concerning |
Resolving merge conflict in ci/requirements.txt.
For the github-ci tests, add the missing dependency on pint-pandas.
flake8 was complaining about typos in messages I copied verbatim from the NOAA storms database. Fix their spelling so that flake8 will be happy.
@dcamron @dopplershift My PR has a dependency on pint-pandas, a package which I think should fit well with the MetPy philosophy of associating units with numbers. However, there appears to be no package in conda-forge, leading to failing tests. Is pint-pandas an acceptable dependency or should I rewrite my PR to not use pint-pandas (and therefore not associate units with numbers)? |
I'm not sure when the tests were run, but looking at them to see the error I get under "install dependencies":
Are the tests only Windows and MacOs? No Linux? |
@gerritholl My impression of pint-pandas it that it's not particularly mature (@jthielen may have a more updated opinion), so I'm very reticent to depend on it at this time. Our (admittedly sub-optimal) solution to this point has been to add a If you can resolve the conflict in |
Description Of Changes
Add a module with functionality to read storms from the NCEI storm database for a requested period in time. The functions rely on pint-pandas to add unit information.
Checklist