欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

python dataframe 取每行的最大值,在python数据框中的每一行中查找最大值

发布时间:2025/3/15 python 33 豆豆
生活随笔 收集整理的这篇文章主要介绍了 python dataframe 取每行的最大值,在python数据框中的每一行中查找最大值 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

I'd like to find the highest values in each row and return the column header for the value in python. For example, I'd like to find the top two in each row:

df =

A B C D

5 9 8 2

4 1 2 3

I'd like my for my output to look like this:

df =

B C

A D

解决方案

You can use a dictionary comprehension to generate the largest_n values in each row of the dataframe. I transposed the dataframe and then applied nlargest to each of the columns. I used .index.tolist() to extract the desired top_n columns. Finally, I transposed this result to get the dataframe back into the desired shape.

top_n = 2

>>> pd.DataFrame({n: df.T[col].nlargest(top_n).index.tolist()

for n, col in enumerate(df.T)}).T

0 1

0 B C

1 A D

总结

以上是生活随笔为你收集整理的python dataframe 取每行的最大值,在python数据框中的每一行中查找最大值的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。