В категориях панд, что такое format = "table"? - PullRequest
0 голосов
/ 04 мая 2018

Формат HDF5, по-видимому, не поддерживает категории с форматом = "fixed". Следующий пример

s = pd.Series(['a','b','a','b'],dtype='category')
s.to_hdf('s.h5','s')

Возвращает ошибку:

NotImplementedError: Невозможно сохранить категорию dtype в наборе данных HDF5, который использует format = "fixed". Используйте format = "table".

Как построить категориальный ряд с форматом = 'таблица'?

1 Ответ

0 голосов
/ 04 мая 2018

Укажите format='table' или format='t' в pd.Series.to_hdf:

s.to_hdf('s.h5', key='s', format='t')

Обратите внимание, что это также то, что советует сообщение об ошибке. Согласно документам :

формат : ‘фиксированный (f) | таблица (t)’, по умолчанию - «фиксированный»

исправлено (f): Исправлено в формате Быстрая запись / чтение. Не дополняемый, ни поиск

table (t): Формат таблицы Запись в виде структуры таблицы PyTables, которая может выполнить хуже, но разрешить более гибкие операции, такие как поиск / выбор подмножеств данных

...