我正在使用where命令提取hdf5文件。对于某些值,我得到除以零的误差。如何解决此问题?读取整个文件并使用查询,我可以轻松提取相同的数据。但是阅读全部内容会消耗大量内存。
我已经使用以下命令进行提取
data = pd.read_hdf(filename, key='tec', mode='r', format='table',where="Prn == 17")
仅当Prn == 17时显示这些错误。
部分错误在下面给出
/usr/local/lib/python2.7/dist-packages/pandas/io/pytables.pyc in select(self)
4774 return self.table.table.read_where(self.condition.format(),
4775 start=self.start,
-> 4776 stop=self.stop)
4777 elif self.coordinates is not None:
4778 return self.table.table.read_coordinates(self.coordinates)
/usr/lib/python2.7/dist-packages/tables/table.pyc in read_where(self, condition, condvars, field, start, stop, step)
1598 self._g_check_open()
1599 coords = [p.nrow for p in
-> 1600 self._where(condition, condvars, start, stop, step)]
1601 self._where_condition = None # reset the conditions
1602 if len(coords) > 1:
tables/tableextension.pyx in tables.tableextension.Row.__next__ (tables/tableextension.c:10992)()
tables/tableextension.pyx in tables.tableextension.Row.__next__indexed (tables/tableextension.c:11535)()
tables/tableextension.pyx in tables.tableextension.Table._convert_types (tables/tableextension.c:6282)()
tables/tableextension.pyx in tables.tableextension.Table._convert_types (tables/tableextension.c:6152)()
tables/tableextension.pyx in tables.tableextension.Table._convert_time64_ (tables/tableextension.c:5690)()
ZeroDivisionError: integer division or modulo by zero
我已经尝试了全部数据。并使用查询来完成同样的工作。
还有另一种方法吗?