假设在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
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())
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。