- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我希望在打开损坏的 HDF5 文件方面得到一些帮助。我正在通过 Pandas
访问 PyTables
,但是 pd.read_hdf()
调用会产生以下错误。我对 PyTables
的内部工作原理一无所知。
我认为错误是由于保存到文件的进程(每 10 秒左右追加一次)被重复造成的,因此有 2 个相同的进程追加。我不确定为什么这会损坏文件而不是重复数据,但这两个错误同时发生,这就是为什么我认为它们有因果关系。
---------------
HDF5ExtError Traceback (most recent call last)
<ipython-input-37-99558b43d768> in <module>()
----> 1 ES2 = h.read('./ES_201509-1')
/Users/AFK/Desktop/fastback/historical_store.pyc in read(self, path, key, **kwargs)
53 frame. Extra keyword args are all passed down to pandas.read_hdf().
54 """
---> 55 df = pd.read_hdf(path, key, **kwargs)
56 df.index = pd.to_datetime(df.Time)
57 del df['Time']
//anaconda/lib/python2.7/site-packages/pandas/io/pytables.pyc in read_hdf(path_or_buf, key, **kwargs)
326 # if there is an error, close the store
327 try:
--> 328 store.close()
329 except:
330 pass
//anaconda/lib/python2.7/site-packages/pandas/io/pytables.pyc in close(self)
566 """
567 if self._handle is not None:
--> 568 self._handle.close()
569 self._handle = None
570
//anaconda/lib/python2.7/site-packages/tables/file.pyc in close(self)
2726
2727 # Close all loaded nodes.
-> 2728 self.root._f_close()
2729
2730 self._node_manager.shutdown()
//anaconda/lib/python2.7/site-packages/tables/group.pyc in _f_close(self)
907 # this is not an explicit close issued by the user.
908 if not (self._v__deleting or self._v_objectid is None):
--> 909 self._g_close_descendents()
910
911 # When all the descendents have been closed, close this group.
//anaconda/lib/python2.7/site-packages/tables/group.pyc in _g_close_descendents(self)
870
871 node_manager = self._v_file._node_manager
--> 872 node_manager.close_subtree(self._v_pathname)
873
874 _g_closeDescendents = previous_api(_g_close_descendents)
//anaconda/lib/python2.7/site-packages/tables/file.pyc in close_subtree(self, prefix)
540 if path.startswith(prefix) and '/_i_' not in path
541 ]
--> 542 self._close_nodes(paths, cache.pop)
543
544 # Close everything else (i.e. indices)
//anaconda/lib/python2.7/site-packages/tables/file.pyc in _close_nodes(nodepaths, get_node)
515 node._g_close()
516 else:
--> 517 node._f_close()
518 del node
519 except ClosedNodeError:
//anaconda/lib/python2.7/site-packages/tables/table.pyc in _f_close(self, flush)
3034 # Flush right now so the row object does not get in the middle.
3035 if flush:
-> 3036 self.flush()
3037
3038 # Some warnings can be issued after calling `self._g_set_location()`
//anaconda/lib/python2.7/site-packages/tables/table.pyc in flush(self)
2969 if self.indexed and self.autoindex:
2970 # Flush any unindexed row
-> 2971 rowsadded = self.flush_rows_to_index(_lastrow=True)
2972 assert rowsadded <= 0 or self._indexedrows == self.nrows, \
2973 ("internal error: the number of indexed rows (%d) "
//anaconda/lib/python2.7/site-packages/tables/table.pyc in flush_rows_to_index(self, _lastrow)
2578 if nrows > 0 and not col.index.dirty:
2579 rowsadded = self._add_rows_to_index(
-> 2580 colname, start, nrows, _lastrow, update=True)
2581 self._unsaved_indexedrows -= rowsadded
2582 self._indexedrows += rowsadded
//anaconda/lib/python2.7/site-packages/tables/table.pyc in _add_rows_to_index(self, colname, start, nrows, lastrow, update)
2609 if lastrow and startLR < self.nrows:
2610 index.append_last_row(
-> 2611 [self._read(startLR, self.nrows, 1, colname)],
2612 update=update)
2613 indexedrows += self.nrows - startLR
//anaconda/lib/python2.7/site-packages/tables/table.pyc in _read(self, start, stop, step, field, out)
1895 self._read_field_name(result, start, stop, step, field)
1896 else:
-> 1897 self.row._fill_col(result, start, stop, step, field)
1898
1899 if select_field:
//anaconda/lib/python2.7/site-packages/tables/tableextension.so in tables.tableextension.Row._fill_col (tables/tableextension.c:12653)()
//anaconda/lib/python2.7/site-packages/tables/tableextension.so in tables.tableextension.Table._read_records (tables/tableextension.c:6721)()
HDF5ExtError: HDF5 error back trace
File "H5Dio.c", line 174, in H5Dread
can't read data
File "H5Dio.c", line 449, in H5D_read
can't read data
File "H5Dchunk.c", line 1729, in H5D_chunk_read
unable to read raw data chunk
File "H5Dchunk.c", line 2760, in H5D_chunk_lock
data pipeline read failed
File "H5Z.c", line 1120, in H5Z_pipeline
filter returned failure during read
File "H5Zdeflate.c", line 125, in H5Z_filter_deflate
inflate() failed
End of HDF5 error back trace
Problems reading records.
最佳答案
您的文件已损坏。无法从中恢复。特别警告不要这样做(使用多个线程/进程作为编写器)。请参阅文档 here .
HDF5 对于编写器来说不是线程安全/进程安全的。
关于python - 打开损坏的 PyTables HDF5 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31523985/
我正在处理一组标记为 160 个组的 173k 点。我想通过合并最接近的(到 9 或 10 个组)来减少组/集群的数量。我搜索过 sklearn 或类似的库,但没有成功。 我猜它只是通过 knn 聚类
我有一个扁平数字列表,这些数字逻辑上以 3 为一组,其中每个三元组是 (number, __ignored, flag[0 or 1]),例如: [7,56,1, 8,0,0, 2,0,0, 6,1,
我正在使用 pipenv 来管理我的包。我想编写一个 python 脚本来调用另一个使用不同虚拟环境(VE)的 python 脚本。 如何运行使用 VE1 的 python 脚本 1 并调用另一个 p
假设我有一个文件 script.py 位于 path = "foo/bar/script.py"。我正在寻找一种在 Python 中通过函数 execute_script() 从我的主要 Python
这听起来像是谜语或笑话,但实际上我还没有找到这个问题的答案。 问题到底是什么? 我想运行 2 个脚本。在第一个脚本中,我调用另一个脚本,但我希望它们继续并行,而不是在两个单独的线程中。主要是我不希望第
我有一个带有 python 2.5.5 的软件。我想发送一个命令,该命令将在 python 2.7.5 中启动一个脚本,然后继续执行该脚本。 我试过用 #!python2.7.5 和http://re
我在 python 命令行(使用 python 2.7)中,并尝试运行 Python 脚本。我的操作系统是 Windows 7。我已将我的目录设置为包含我所有脚本的文件夹,使用: os.chdir("
剧透:部分解决(见最后)。 以下是使用 Python 嵌入的代码示例: #include int main(int argc, char** argv) { Py_SetPythonHome
假设我有以下列表,对应于及时的股票价格: prices = [1, 3, 7, 10, 9, 8, 5, 3, 6, 8, 12, 9, 6, 10, 13, 8, 4, 11] 我想确定以下总体上最
所以我试图在选择某个单选按钮时更改此框架的背景。 我的框架位于一个类中,并且单选按钮的功能位于该类之外。 (这样我就可以在所有其他框架上调用它们。) 问题是每当我选择单选按钮时都会出现以下错误: co
我正在尝试将字符串与 python 中的正则表达式进行比较,如下所示, #!/usr/bin/env python3 import re str1 = "Expecting property name
考虑以下原型(prototype) Boost.Python 模块,该模块从单独的 C++ 头文件中引入类“D”。 /* file: a/b.cpp */ BOOST_PYTHON_MODULE(c)
如何编写一个程序来“识别函数调用的行号?” python 检查模块提供了定位行号的选项,但是, def di(): return inspect.currentframe().f_back.f_l
我已经使用 macports 安装了 Python 2.7,并且由于我的 $PATH 变量,这就是我输入 $ python 时得到的变量。然而,virtualenv 默认使用 Python 2.6,除
我只想问如何加快 python 上的 re.search 速度。 我有一个很长的字符串行,长度为 176861(即带有一些符号的字母数字字符),我使用此函数测试了该行以进行研究: def getExe
list1= [u'%app%%General%%Council%', u'%people%', u'%people%%Regional%%Council%%Mandate%', u'%ppp%%Ge
这个问题在这里已经有了答案: Is it Pythonic to use list comprehensions for just side effects? (7 个答案) 关闭 4 个月前。 告
我想用 Python 将两个列表组合成一个列表,方法如下: a = [1,1,1,2,2,2,3,3,3,3] b= ["Sun", "is", "bright", "June","and" ,"Ju
我正在运行带有最新 Boost 发行版 (1.55.0) 的 Mac OS X 10.8.4 (Darwin 12.4.0)。我正在按照说明 here构建包含在我的发行版中的教程 Boost-Pyth
学习 Python,我正在尝试制作一个没有任何第 3 方库的网络抓取工具,这样过程对我来说并没有简化,而且我知道我在做什么。我浏览了一些在线资源,但所有这些都让我对某些事情感到困惑。 html 看起来
我是一名优秀的程序员,十分优秀!