如何在Pandas DataFrame中获取最大值对应的列名
获取Pandas每行最大值对应的列名
直接使用Pandas的idxmax方法即可实现需求,该方法会返回每行最大值对应的列标签,代码如下:
df["When"] = df[['Day 1','Day 2','Day 4']].idxmax(axis=1)
说明
idxmax(axis=1)指定沿行方向(横向)查找最大值所在的列名,和你之前用max(axis=1)获取最大值的逻辑对应,只是返回结果从数值换成了列标签。
执行后得到的DataFrame如下:
| Car | Day 1 | Day 2 | Day 4 | When |
|---|---|---|---|---|
| Car1 | 4 | 7 | 3 | Day 2 |
| car2 | 8 | 2 | 1 | Day 1 |
内容的提问来源于stack exchange,提问作者Joao Beca
相关产品推荐
相关产品推荐

