给定一个 pandas HDFStore 包含一个DataFrame
:
import pandas as pd
import numpy.random as rd
df = pd.DataFrame(rd.randn(int(1000)).reshape(500, 2), columns=list('ab'))
store = pd.HDFStore('store.h5')
store.append('df', df, data_columns=['a', 'b'])
我可以使用该select
函数来检索数据的子集,如下所示:
store.select('df', ['a > 0', 'b > 0'])
但是,如果我使用的普通命令DataFrame
不在HDFStore
:
store.df[(store.df.a > 0) & (store.df.b > 0)]
这两种方法有区别吗?如果是这样,有什么区别?