Использование pandas read_hdf для загрузки данных на Google Диск завершается ошибкой ValueError

#pandas #google-colaboratory

#панды #google-совместная лаборатория

Вопрос:

Я загрузил HDF-файл на Google Диск и хочу загрузить его в Colab. Файл был создан из DataFrame.to_hdf() фрейма данных с помощью и может быть успешно загружен локально с pd.read_hdf() помощью . Однако, когда я пытаюсь смонтировать свой Google Диск и прочитать данные в Colab, происходит сбой с помощью a ValueError .

Вот код, который я использую для чтения данных:

 from google.colab import drive
drive.mount('/content/drive')
data = pd.read_hdf('/content/drive/My Drive/Ryhmäytyminen/data/data.h5', 'students')
 

И это полное сообщение об ошибке:

 ---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-15-cfe913c26e60> in <module>()
----> 1 data = pd.read_hdf('/content/drive/My Drive/Ryhmäytyminen/data/data.h5', 'students')

7 frames
/usr/local/lib/python3.6/dist-packages/tables/vlarray.py in read(self, start, stop, step)
    819             listarr = []
    820         else:
--> 821             listarr = self._read_array(start, stop, step)
    822 
    823         atom = self.atom

tables/hdf5extension.pyx in tables.hdf5extension.VLArray._read_array()

ValueError: cannot set WRITEABLE flag to True of this array
 

Чтение некоторых данных JSON прошло успешно, так что проблема, вероятно, не в монтировании. Есть какие-нибудь идеи, что не так или как отладить эту проблему?

Спасибо!

Ответ №1:

Сначала попробуйте перейти к каталогу, в котором хранится ваш HDF-файл:

 cd /content/drive/My Drive/Ryhmäytyminen/data
 

Отсюда вы должны иметь возможность загружать файл HDF напрямую:

 data = pd.read_hdf('data.h5', 'students')