无法用Panda将数据存储在HDF5中?

时间:2015-03-04 02:10:29

标签: python pandas hdf

我正在尝试以HDF5格式存储大型数据帧,但我总是遇到错误。我不应该用好方法去做,但我不知道我错在哪里。

这是我的代码:

import pandas as pd
import numpy as np

nrows=5
ncols=5

colnames=[]
for i in range(0,ncols):
    colnames.append('C'+str(i))

df = pd.DataFrame(np.random.randint(9,size=(nrows,ncols)),columns=colnames)

构建一个简单的数据框:

In [13]: df
Out[13]: 
   C0  C1  C2  C3  C4
0   1   4   5   5   3
1   8   2   7   1   4
2   2   7   6   4   2
3   8   2   4   3   3
4   8   6   5   3   6

现在我尝试:

df.to_hdf('test1.hdf','test',mode='w')

或:

df.to_hdf('test_table.hdf','test',format='table',mode='w')

我获得:

AttributeError: 'NoneType' object has no attribute '_f_close'

我也尝试这种方法:

store = pd.HDFStore('data/store.h5', 'w')
store['df'] = df

但我明白了:

AssertionError: stale weak reference to dead node ``/df/axis0``

这样做的正确方法是什么? 谢谢。

我正在使用: Python 3.4.1 大熊猫0.15.2 表3.0.0

1 个答案:

答案 0 :(得分:0)

正如James在评论中所回答的那样,在更新到 Tables 的最新版本时,这只是一个错误。