开发者社区> 问答> 正文

查找全局最小熊猫的索引

假设在panda dataframe中保存了某个函数z = f(x, y)的数值数据,其中x是索引值,y是列值,dataframe由z数据填充。例如:

       0.0       0.1       0.2       0.3       0.4       0.5       0.6   
1.0    0.0 -0.002961 -0.005921 -0.008883 -0.011845 -0.014808 -0.017772  
1.1    0.0 -0.002592 -0.005184 -0.007777 -0.010371 -0.012966 -0.015563 
1.2    0.0 -0.002084 -0.004168 -0.006253 -0.008340 -0.010428 -0.012517

是否有一个简单的panda命令,或者可能是一个由几个简单命令组成的单行字符串,它返回与数据属性对应的(x, y)值,特别是在我的例子中是min(z)?在示例数据中,我将查找(1.0、0.6) 我只是希望有一个不涉及解析数据到其他结构的答案,因为当然,只是线性化numpy数组中的数据并将numpy数组索引与(x,y)关联。但是,如果有一些更干净/更优雅的东西是我找不到的,我很想了解一下。 问题来源StackOverflow 地址:/questions/59383558/finding-the-indexes-of-the-global-min-pandas

展开
收起
kun坤 2019-12-27 10:17:29 510 0
1 条回答
写回答
取消 提交回答
  • import pandas as pd
    
    # df view
         0.0       0.1       0.2       0.3       0.4       0.5       0.6
    1.0  0.0 -0.002961 -0.005921 -0.008883 -0.011845 -0.014808 -0.017772
    1.1  0.0 -0.002592 -0.005184 -0.007777 -0.010371 -0.012966 -0.015563
    1.2  0.0 -0.002084 -0.004168 -0.006253 -0.008340 -0.010428 -0.012517
    
    # min column
    min_col_name = df.min().idxmin()
    
    # min column index if needed
    min_col_idx = df.columns.get_loc(min_col_name)
    
    # min row index
    min_row_idx = df[min_col_name].idxmin()
    

    另一个选择:

    (df.min(axis=1).idxmin(), df.min().idxmin())
    
    2019-12-27 10:17:38
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Phoenix 全局索引原理与实践 立即下载
RowKey与索引设计:技巧与案例分析 立即下载
低代码开发师(初级)实战教程 立即下载