我有一个pandas数据框(自动索引为0到n-1),它包含多个列,其中包括"价格1","价格2",&#34 ;价格3"等等。我有兴趣找到专栏" name"的价值。对于具有高价的行(从ALL"价格x"列中选择的最大价格)。我知道我可以选择仅包含价格的表格视图,然后执行price_table_view.values.max()以获得最高价格。但我想要这个数字的索引,所以我可以反向查找其他列。我已经尝试过price_table_view.idxmax()来获取每个价格的最高价值指数列表。但我只想要这些价格最高的指数。如何隔离最大值的索引?谢谢!
答案 0 :(得分:0)
试试这个:
In [124]: df
Out[124]:
ID price1 price2 price3
0 1 11 2 88
1 2 4 5 66
2 3 7 88 9
3 4 99 0 99
In [125]: subset = df.filter(regex='^price')
In [126]: subset
Out[126]:
price1 price2 price3
0 11 2 88
1 4 5 66
2 7 88 9
3 99 0 99
In [127]: np.unravel_index(subset.values.argmax(), subset.values.shape)
Out[127]: (3, 0)