在Python中使用Pandas从每列中获取前4个最大值 [英] Get top 4 biggest values from each column using Pandas in Python

查看:26
本文介绍了在Python中使用Pandas从每列中获取前4个最大值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两个专栏,显示了对积极分数和消极分数的情绪分析。以下是输出:

scat=btweet[['sentiment_pos', 'sentiment_negative']]
scat

sentiment_pos    sentiment_negative

0.286              0.000
0.451              0.000
0.143              0.300
0.151              0.100
我想从每一列中获取最大值, 我试过了,但只得到了一栏的最大值。

scat.nlargest(4, 'sentiment_pos')

 sentiment_pos    sentiment_negative

    0.451             0.000
    0.286             0.000
    0.151             0.300
    0.143             0.100

我的输出应该是这样的

  sentiment_pos    sentiment_negative

    0.451             0.300
    0.286             0.100
    0.151             0.000
    0.143             0.000

有人能帮我写它的代码吗?

推荐答案

您可以通过numpy向量化此计算。

例如,每列中最大的两个:-

df = pd.DataFrame(np.sort(df.values, axis=0)[::-1][:2], columns=df.columns)

结果:

   sentiment_pos  sentiment_negative
0          0.451                 0.3
1          0.286                 0.1

这篇关于在Python中使用Pandas从每列中获取前4个最大值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆