pd.read_hdf throws 'cannot set WRITABLE flag to True of this array' pd.read_hdf throws 'cannot set WRITABLE flag to True of this array' python python

pd.read_hdf throws 'cannot set WRITABLE flag to True of this array'


Are you using numpy 1.16? It is incompatible with the latest release of pytables (see https://github.com/PyTables/PyTables/blob/v3.4.4/tables/hdf5extension.pyx#L2155) but the pytables team have not yet released a fixed version: https://github.com/PyTables/PyTables/issues/719

The only way I found to fix this is to downgrade numpy.


Upgrading PyTables to version > 3.5.1 should solve this.

pip install --upgrade tables


It seems that time-date strings were causing the problem and when I converted these from text to numpy (pd.to_datetime()) and stored the table and the problem went away so perhaps it has something to do with text data?