给出一个输入,返回值的范围包含该输入的行

问题描述 投票:0回答:1

我是新来的,所以请保持温柔。我是自学成才的,所以我可能会有点白痴。

所以我有一个带有多级索引的Pandas数据框。

TEST     Gender     Age     Category     Level     Points     Curl Ups
IST      Female     20-24   Outstanding  High      100        105-500
                            Outstanding  Medium    95         103-104
                            Outstanding  Low       90         100-102
...       ...       ...         ...        ...      ...        ...
                    25-29   Outstanding  High      100        103-500
                            Outstanding  Medium    95         100-102
...

我希望能够输入测试内容,性别,年龄和个人进行卷翘的次数,即;对于测试IST,一位26岁且卷翘100次的女性看起来像

['IST','Female',26,100]

我正在寻找的输出将是点,类别级别。即;]]

[95, 'Outstanding-Medium']

因此,它需要能够为“年龄”输入26,并知道跳转到25-29块以下的行,然后接受100的输入并知道将100落入,即; 100-102。这些都是包容性的(26岁时100包括102个Curl Ups,可以使您获得95分的得分,这是一个出色的媒介)。

我已经尝试使用loc,但是我发现的所有内容都以另一种方式进行了操作,它要求将行放置在所需范围内,然后拉出包含该范围内的值的行。

我需要的是,您给它提供一个值,它会拉出具有包含该值的范围的行。

我是新来的,所以请保持温柔。我是自学成才的,所以我可能会觉得自己是个白痴。所以我有一个带有多级索引的熊猫数据框。测试性别年龄类别级别...

python pandas dataframe search multi-index
1个回答
0
投票

这不是一个充实的答案,但我认为这个总体思路可能对您有用。这个想法是在数据框中创建代表每个范围值的最小值和最大值的新列。然后,您可以非常简单地根据这些值过滤数据框:

© www.soinside.com 2019 - 2024. All rights reserved.