如何绘制用Pandas将一列除以另一列得到的5个最大值?

2024-09-27 21:24:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我的数据集如下所示:

variety|points|price  
a      |  80  |  5  
b      |  85  |  6  
b      |  70  |  8  

等等。你知道吗

我想用seaborn创建一个条形图,x轴上有变化,y轴上有点数/价格比。我有大约15万行,所以我只想显示5个最佳点/价格比。你知道吗

这是我使用另一个名为result的专栏的想法:

df["Result"] = df["points"]/df["price"]
ax = sns.barplot(x="variety", data=df, order=df["Result"].iloc[:5].index)

这是行不通的。你知道吗

我很乐意接受任何建议。你知道吗


Tags: 数据dfdataresultseabornaxpricepoints
1条回答
网友
1楼 · 发布于 2024-09-27 21:24:40

您可以尝试使用nlargest筛选出前5个最大值。你知道吗

largest_five= df.nlargest(5,'Result')

然后画出来

ax = sns.barplot(x="variety",y='Result', data=largest_five)

让我知道这是否有效。你知道吗

相关问题 更多 >

    热门问题