1

I have a link to a NASA dataset, formatted as .hdf (download below)

https://reason.gesdisc.eosdis.nasa.gov/data/Vegetation_Indices/MODVI.005/2001/MODVI.200101.005.hdf

After downloading this locally, I tried the following code

import pandas as pd
pd.read_hdf('MODVI.200101.005.hdf')

Unfortunately, this code gave me an error (seen below). Any help in reading this file would be greatly appreciated!

HDF5ExtError                              Traceback (most recent call last)
~\anaconda3\lib\site-packages\pandas\io\pytables.py in open(self, mode, **kwargs)
    654         try:
--> 655             self._handle = tables.open_file(self._path, self._mode, **kwargs)
    656         except IOError as err:  # pragma: no cover

~\anaconda3\lib\site-packages\tables\file.py in open_file(filename, mode, title, root_uep, filters, **kwargs)
    314     # Finally, create the File instance, and return it
--> 315     return File(filename, mode, title, root_uep, filters, **kwargs)
    316 

~\anaconda3\lib\site-packages\tables\file.py in __init__(self, filename, mode, title, root_uep, filters, **kwargs)
    777         # Now, it is time to initialize the File extension
--> 778         self._g_new(filename, mode, **params)
    779 

tables/hdf5extension.pyx in tables.hdf5extension.File._g_new()

HDF5ExtError: HDF5 error back trace

  File "C:\ci\hdf5_1545244154871\work\src\H5F.c", line 509, in H5Fopen
    unable to open file
  File "C:\ci\hdf5_1545244154871\work\src\H5Fint.c", line 1400, in H5F__open
    unable to open file
  File "C:\ci\hdf5_1545244154871\work\src\H5Fint.c", line 1700, in H5F_open
    unable to read superblock
  File "C:\ci\hdf5_1545244154871\work\src\H5Fsuper.c", line 411, in H5F__super_read
    file signature not found

End of HDF5 error back trace

Unable to open/create file 'MODVI.200101.005.hdf'

During handling of the above exception, another exception occurred:

OSError                                   Traceback (most recent call last)
<ipython-input-13-ee439b8cf983> in <module>
      1 import pandas as pd
----> 2 pd.read_hdf('MODVI.200101.005.hdf')

~\anaconda3\lib\site-packages\pandas\io\pytables.py in read_hdf(path_or_buf, key, mode, errors, where, start, stop, columns, iterator, chunksize, **kwargs)
    395             raise FileNotFoundError(f"File {path_or_buf} does not exist")
    396 
--> 397         store = HDFStore(path_or_buf, mode=mode, errors=errors, **kwargs)
    398         # can't auto open/close if we are using an iterator
    399         # so delegate to the iterator

~\anaconda3\lib\site-packages\pandas\io\pytables.py in __init__(self, path, mode, complevel, complib, fletcher32, **kwargs)
    535         self._fletcher32 = fletcher32
    536         self._filters = None
--> 537         self.open(mode=mode, **kwargs)
    538 
    539     def __fspath__(self):

~\anaconda3\lib\site-packages\pandas\io\pytables.py in open(self, mode, **kwargs)
    685             # is not part of IOError, make it one
    686             if self._mode == "r" and "Unable to open/create file" in str(err):
--> 687                 raise IOError(str(err))
    688             raise
    689 

OSError: HDF5 error back trace

  File "C:\ci\hdf5_1545244154871\work\src\H5F.c", line 509, in H5Fopen
    unable to open file
  File "C:\ci\hdf5_1545244154871\work\src\H5Fint.c", line 1400, in H5F__open
    unable to open file
  File "C:\ci\hdf5_1545244154871\work\src\H5Fint.c", line 1700, in H5F_open
    unable to read superblock
  File "C:\ci\hdf5_1545244154871\work\src\H5Fsuper.c", line 411, in H5F__super_read
    file signature not found

End of HDF5 error back trace

Unable to open/create file 'MODVI.200101.005.hdf'
Stephen
  • 89
  • 2
  • 6
  • The file requires a un and pw to download, so your question is not currently reproducible. – Trenton McKinney Jan 04 '21 at 00:01
  • You obviously don't run your python script from the folder where your file is. Specify a path with the filename like: `pd.read_hdf(r'c:\my\path\to\MODVI.200101.005.hdf')` – Stef Jan 04 '21 at 09:38

1 Answers1

0

Please, try pip install tables. the problem seems to be caused by HDF5ExtError Traceback (most recent call last) ~\anaconda3\lib\site-packages\pandas\io\pytables.py in open(self, mode, **kwargs)