BUG: netcdf4 conversion error in forecast.py
See original GitHub issueDescribe the bug
The method get_data() from the parent class ForecastModel has a handling NETCDF data. It produces the following error on multiple tests within test_forecast.py:
TypeError: <class 'cftime._cftime.DatetimeGregorian'> is not convertible to datetime
To Reproduce Run the command locally:
pytest pvlib/tests/test_forecast.py --remote-data --pdb
This command will ensure the tests marked as remote_data are run and you’ll be dropped into a pdb debugger.
Expected behavior The formatted data would be received without error.
Screenshots If applicable, add screenshots to help explain your problem.
Versions:
pvlib.__version__: 0.7.1 masterpandas.__version__: 1.0.3- python: 3.7.4
Additional context
I’m unsure about the underlying origin but the disconnect seems to come through get_data() -> _netcdf2pandas() -> set_time() where num2date supplies a DatetimeGregorian that Pandas can’t process.
It’s notable that there is a suggestion on line 279 of forecast.py about the potential to move to xarray’s implementation of NetCDF rather than using the _netcdf2pandas() method. This avenue likely has the potential to be easier than continuing a pvlib implementation.
Issue Analytics
- State:
- Created 3 years ago
- Comments:6 (5 by maintainers)

Top Related StackOverflow Question
Downgrading cftime from 1.1.1 to 1.0.4 solved this issue for me.
@CameronTStark do you still see this problem when using pvlib/pvlib-python/master? I think @kanderso-nrel’s suggestion might have fixed it and #947 might be unnecessary. Sorry I got confused about which issue to reference.