0.13支持通过构造索引进行随机访问
In [26]: df = DataFrame(np.random.randn(100,2),columns=['A','B'])In [27]: df.to_hdf('test.h5','df',mode='w',format='table')In [28]: store = pd.hdfstore('test.h5')In [29]: nrows = store.get_storer('df').nrowsIn [30]: nrowsOut[30]: 100In [32]: r = np.random.randint(0,nrows,size=10)In [33]: rOut[33]: array([69,28,8,2,14,51,92,25,82,64])In [34]: pd.read_hdf('test.h5',where=pd.Index(r))Out[34]: A B69 -0.370739 -0.32543328 0.155775 0.9614218 0.101041 -0.0474992 0.204417 0.47080514 0.599348 1.17401251 0.634044 -0.76977092 0.240077 -0.15411025 0.367211 -1.02708782 -0.698825 -0.08471364 -1.029897 -0.796999[10 rows x 2 columns]
要包含其他条件,您可以这样做:
# make sure that we have indexable columnsdf.to_hdf('test.h5',format='table',data_columns=True)# select where the index (an integer index) matches r and A > 0In [14]: rOut[14]: array([33,33,95,69,21,43,58,58])In [13]: pd.read_hdf('test.h5',where='index=r & A>0')Out[13]: A B21 1.456244 0.17344343 0.174464 -0.444029[2 rows x 2 columns]总结
以上是内存溢出为你收集整理的python – PyTables读取随机子集全部内容,希望文章能够帮你解决python – PyTables读取随机子集所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)