我有一个pandas数据框,代表一系列时间序列。索引是以毫秒为单位的日期,它们是有序的。数据框看起来像这样
Out[51]:
host info parameter units value
time
1462964269947 parapluie-13.rennes.grid5000.fr None cpu_idl % 98.624
1462964269947 parapluie-13.rennes.grid5000.fr None cpu_usr % 1.209
1462964269947 parapluie-13.rennes.grid5000.fr None cpu_sys % 0.167
1462964269948 parapluie-13.rennes.grid5000.fr None cpu_hiq % 0.000
1462964269948 parapluie-13.rennes.grid5000.fr None cpu_wait % 0.000
1462964269961 parapluie-13.rennes.grid5000.fr None cpu_siq % 0.000
我想将数据帧从开始值切换到结束值。但是,此值可能在索引中,也可能不在索引中。因此,我收到以下错误:
In[54]: dfg2.loc[1462964269947:1462964269963]
KeyError:'stop bound [1462964269963]不在[index]'
是否有设置和索引,然后切片一系列值,即使它们在索引中不存在?
提前致谢
答案 0 :(得分:1)
您可以使用boolean indexing
:
print (df.index > 1462964269947) & (df.index < 1462964269963)
[False False False True True True]
print df[(df.index > 1462964269947) & (df.index < 1462964269963)]
host info parameter units value
time
1462964269948 parapluie-13.rennes.grid5000.fr None cpu_hiq % 0.0
1462964269948 parapluie-13.rennes.grid5000.fr None cpu_wait % 0.0
1462964269961 parapluie-13.rennes.grid5000.fr None cpu_siq % 0.0