在定义的范围内查找Sub范围的值

时间:2017-09-22 12:00:18

标签: python pandas series

我有3个系列的数据值:

min_range:

27    893.151613
26    882.384516
20    817.781935
dtype: float64

MAX_RANGE:

28    903.918710
27    893.151613
21    828.549032
dtype: float64

我创建了一系列范围:

range = zip(min_range, max_range)

输出:

[(893.1516129032259, 903.91870967741943), (882.38451612903225, 893.1516129032259), (817.78193548387094, 828.54903225806447)]

我有一个子范围:

子范围1:824 子范围2:825

我想找到子范围所在的区域。

for p,q in zip(min_range, max_range):
    if (sub-range1 > p) & (sub-range2 < q):
        print p,q

输出:     817.781935484 828.549032258

我想从定义的&#34;范围&#34;。

中找到相应的位置

预期产出:

817.781935484 828.549032258
range = 2 (Position in the range list)

我怎样才能做到这一点?任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:4)

使用enumerate获取索引,即

for i,(p,q) in enumerate(zip(min_range, max_range)):
    if (sub_range1 > p) & (sub_range2 < q):
        print(i)

输出:2

答案 1 :(得分:0)

使用计数器的简单方法。

cnt = 0
for p,q in zip(min_range, max_range):
    if (sub-range1 > p) & (sub-range2 < q):
        print p,q
        print cnt
    cnt = cnt + 1