Python 在特定条件下在日期时间索引的数据帧中查找整数索引

Python 在特定条件下在日期时间索引的数据帧中查找整数索引,python,numpy,pandas,Python,Numpy,Pandas,我有一个pandas.DataFrame对象,看起来类似于以下内容: DateTime t a b c ... ... ... ... ... 2016-06-19 21:43:00 2422 2420 2425 2 2016-06-19 21:43:00 2423 2420 2425 2 2016-06-19 21:43:00 2424

我有一个pandas.DataFrame对象,看起来类似于以下内容:

 DateTime              t      a      b      c
 ...                   ...    ...    ...    ...
 2016-06-19 21:43:00   2422   2420   2425   2
 2016-06-19 21:43:00   2423   2420   2425   2
 2016-06-19 21:43:00   2424   2420   2425   2
 2016-06-19 21:43:00   2425   2420   2425   2
 2016-06-19 21:43:01   2424   2422   2424   1
 2016-06-19 21:43:02   2423   2422   2424   3
 2016-06-19 21:43:02   2424   2422   2424   3
 ...                   ...    ...    ...    ...
另外,假设数据帧的这一部分等于第1000到1006行(即
df.iloc[1000:1006]
)。我想返回此数据帧行的整数索引,其中以下条件为真:

  • “c”列是一个3
  • “t”列是局部最大值
  • 整数索引介于1004和1006之间
我相信您可以简单地使用
np.where
函数返回索引,其中“c”列是3,但我很难过滤这些结果,以使“t”列是局部最大值,而整数索引在x和y之间。在这种情况下,我希望得到索引1006(因为't'是最大值,'c'是3,这个整数1006在1000和1006之间)

如果有人对如何有效地做到这一点有任何想法,我们将不胜感激。谢谢大家!