让我们说,我有一个像下面的pandas数据框
A B C
0 25.0 xyz abc
1 60.0 aaa bbb
2 30.0 xxx yyy
3 40.0 zzz nnn
4 45.0 aaa bbb
5 35.0 ccc ddd
对于这个问题,B和C并不重要。
现在我有一定范围33.0到43.0
我需要过滤数据帧,以便我需要33.0和43.0之间的所有行
而且两边都有1个元素。
意思是我想在这种情况下获得30.0和45.0的行。 所以在这种情况下我需要行 2,3,4,5
如何构建这样的过滤器。 可以说数据的间隔不像30 35等那样固定。它可以是任何东西。
答案 0 :(得分:0)
或者在重置索引后只是在排序的DataFrame上切片......?
df.sort(['A'],inplace=True)
df.reset_index(inplace = True)
df[int(df[df.A == 33.0].index) - 1 : int(df[df.A == 43.0].index) + 2]