搜索输入值小于下一个索引列值的pandas dataframe列

佩约

我想搜索一个数据框以找到对应于索引行和列值的值。但是,我很挣扎,因为列标题值是某个范围的上限,而前一个列标题值是该范围的下限(但是其其他neightbor列值的上限)。

我找不到一种将输入与范围下限对应的列进行匹配的方法。

举一个例子,很容易看到:

data_frame_test = pd.DataFrame({'location' : [1, 2, 'S'],
                                '200' : [342, 690, 103],
                                '1000' : [322, 120, 193],
                                '2000' : [249, 990, 403]})

data_frame_test = data_frame_test.set_index('location')

我想做的是

location = 1
weight = 500

output = data_frame_test.iloc[1][??] #must be equal to 342

可以看到,重量必须查看的列为200,因为它的范围是] 200; 1000 [。我不知道还有什么尝试将其转换为python代码。任何帮助将不胜感激。

莫希特·沙玛(Mohit Sharma)

您可以创建一个自定义函数,该函数将遍历列以检查正确的列,然后返回该位置的单元格:

def get_val(location, weight, df):
    col = df.columns[0]
    for c in df.columns:
        if weight >= int(c):
            col = c
        else:
            break
    return df.loc[location, col]
get_val(1, 500, data_frame_test)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

比较Pandas列中的上一个和下一个不同的值

来自分类Dev

如果匹配成功,则在列中搜索字符串并复制下一个列的值

来自分类Dev

在数据框中,为列的每个元素找到下一个较小值的索引

来自分类Dev

jQuery将表的第二列值合并到下一个列值

来自分类Dev

始终使用“序列列”中的下一个序列(不允许用户输入值)

来自分类Dev

在Python的同一列中用下一个值填充NaN值

来自分类Dev

如何将Pandas DataFrame的行前进到下一个值?

来自分类Dev

使用SQL窗口函数填充1列具有值0的行,可能具有行索引的下一个max / prev min值

来自分类Dev

将每列中的第一个值乘以 MATLAB 中的下一个值

来自分类Dev

确定更大的下一个值,然后乘以同一行的D列

来自分类Dev

找到唯一的列值,并将输出用于下一个查询

来自分类Dev

在MySQL中查找AUTO_INCREMENT列的下一个值

来自分类Dev

查询:选择并显示下一个最大值作为新列

来自分类Dev

SQL获取列中的下一个非空值

来自分类Dev

熊猫:字符串匹配后获取列中的下一个值

来自分类Dev

具有浮动条件的COUNTIFS与列中的下一个值匹配

来自分类Dev

在列中的日期值之后查找下一个日期(SQL Server 2008)

来自分类Dev

在列中创建相同的值,直到下一个日期

来自分类Dev

根据下一个列值更改数据框值

来自分类Dev

如何使用内部联接获取“下一个列”值?

来自分类Dev

从列中找到n范围内的下一个高/低值

来自分类Dev

将值粘贴到与测试列相邻的下一个空白单元格

来自分类Dev

如果下一个观察值相差 1 年,则从某些列移动行

来自分类Dev

r - 使用数据框列中的下一个非 na 值进行计算

来自分类Dev

添加新列,显示 id 组中从现在到下一个值的变化

来自分类Dev

dplyr mutate函数可垂直计算列(当前,上一个,下一个)中的值

来自分类Dev

提取列值从R中的一个日期更改为下一个日期的行

来自分类Dev

如果A列具有值,则汇总B列中的变量,直到出现A列中的下一个变量

来自分类Dev

python&pandas-删除行,其中列值是另一个DataFrame中的索引值

Related 相关文章

  1. 1

    比较Pandas列中的上一个和下一个不同的值

  2. 2

    如果匹配成功,则在列中搜索字符串并复制下一个列的值

  3. 3

    在数据框中,为列的每个元素找到下一个较小值的索引

  4. 4

    jQuery将表的第二列值合并到下一个列值

  5. 5

    始终使用“序列列”中的下一个序列(不允许用户输入值)

  6. 6

    在Python的同一列中用下一个值填充NaN值

  7. 7

    如何将Pandas DataFrame的行前进到下一个值?

  8. 8

    使用SQL窗口函数填充1列具有值0的行,可能具有行索引的下一个max / prev min值

  9. 9

    将每列中的第一个值乘以 MATLAB 中的下一个值

  10. 10

    确定更大的下一个值,然后乘以同一行的D列

  11. 11

    找到唯一的列值,并将输出用于下一个查询

  12. 12

    在MySQL中查找AUTO_INCREMENT列的下一个值

  13. 13

    查询:选择并显示下一个最大值作为新列

  14. 14

    SQL获取列中的下一个非空值

  15. 15

    熊猫:字符串匹配后获取列中的下一个值

  16. 16

    具有浮动条件的COUNTIFS与列中的下一个值匹配

  17. 17

    在列中的日期值之后查找下一个日期(SQL Server 2008)

  18. 18

    在列中创建相同的值,直到下一个日期

  19. 19

    根据下一个列值更改数据框值

  20. 20

    如何使用内部联接获取“下一个列”值?

  21. 21

    从列中找到n范围内的下一个高/低值

  22. 22

    将值粘贴到与测试列相邻的下一个空白单元格

  23. 23

    如果下一个观察值相差 1 年,则从某些列移动行

  24. 24

    r - 使用数据框列中的下一个非 na 值进行计算

  25. 25

    添加新列,显示 id 组中从现在到下一个值的变化

  26. 26

    dplyr mutate函数可垂直计算列(当前,上一个,下一个)中的值

  27. 27

    提取列值从R中的一个日期更改为下一个日期的行

  28. 28

    如果A列具有值,则汇总B列中的变量,直到出现A列中的下一个变量

  29. 29

    python&pandas-删除行,其中列值是另一个DataFrame中的索引值

热门标签

归档