在时间序列中停止绑定的熊猫索引

时间:2016-05-16 16:05:52

标签: python pandas indexing dataframe

我有一个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]'

是否有设置和索引,然后切片一系列值,即使它们在索引中不存在?

提前致谢

1 个答案:

答案 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