查找每行具有最大值的列名

我有这样一个数据帧:

[7]on

:
frame.head()
Output[7]:
通信和搜索业务一般生活方式
0   0.745763    0.050847    0.118644    0.084746
0   0.333333    0.000000    0.583333    0.083333
0   0.617021    0.042553    0.297872    0.042553
0   0.435897    0.000000    0.410256    0.153846
0   0.358974    0.076923    0.410256    0.153846

在这里,我想问一下如何获得每行具有最大值的列名,所需的输出如下:

[7]on

:
frame.head()
Output[7]:
通信和搜索业务通用生活方式Max
0.745763 0.050847 0.118644 0.084746通信
0.3330.0000000.583333 0.083333业务
0.617021 0.042553 0.297872 0.042553通信
0.435897 0.0000000.410256 0.153846通信
0.358974 0.076923 0.410256 0.153846业务

您可以使用idxmaxaxis=1查找每行上具有最大值的列:

&gt&燃气轮机&燃气轮机;df.idxmax(轴=1)
0通信
1业务
2通信
3通信
4业务
数据类型:对象

要创建新列“Max”,请使用df['Max']=df.idxmax(axis=1)

要查找每列中出现最大值的索引,请使用df.idxmax()(或等效地df.idxmax(axis=0)

发表评论