我遇到了与HDFStore分组的问题,结果扩展到根据包含'&'的字符串选择行字符。这应该说明问题
>>> from pandas import HDFStore, DataFrame
>>> df = DataFrame({'a': ['a', 'a', 'c', 'b', 'test & test', 'c' , 'b', 'e'],
'b': [1, 2, 3, 4, 5, 6, 7, 8]})
>>> store = HDFStore('test.h5')
>>> store.append('test', df, format='table', data_columns=True)
>>> df[df.a == 'test & test']
a b 4 test & test 5
>>> store.select('test', 'a="test & test"')
Int64Index([], dtype='int64') Empty DataFrame
现在我想知道我是否遗漏了documentation中的某些内容,或者这是否是一个错误。
答案 0 :(得分:1)
如评论所述,现在已经修复了(因为pandas 0.14):
In [11]: df[df.a == 'test & test']
Out[11]:
a b
4 test & test 5
In [12]: store.select('test', 'a="test & test"')
Out[12]:
a b
4 test & test 5
答案 1 :(得分:-2)
在我看来,h5py是一个比熊猫更强大的HDF5文件python模块。 http://www.h5py.org/