如何获得大熊猫的前n组?

时间:2019-11-12 20:01:05

标签: python pandas dataframe

我有一个熊猫数据框。数据框中的最后一列是数据框中每个唯一组(在这种情况下为物种分配)的RelAb列的最大值,该值通过以下方式获得:

df_melted['Max'] = df_melted.groupby('Species')['RelAb'].transform('max')

如您所见,最大值在组的所有行中表示。每个组包含大量行。我将df按最大值排序,每个最大值大约有100行。我的目标是根据最大值(即具有100 X 20行-2000行的df)获得前20个组。我不想从数据框中的组中删除单个行,而是整个组。

我正在粘贴数据框的子集,其中组的最大值从一个“最大值”更改为下一个:

original df

我的感觉是我需要转换最大值,以便一个值代表整个组,然后根据该列进行排序,也许是这样?

Possible <code>df</code> to address inquiry

就上下文而言,我这样做的原因是因为我计划针对每个样本制作一个堆叠的条形图,其中表中种类最多。现在,种类太多了,因此使堆积的条形图没有信息。

1 个答案:

答案 0 :(得分:1)

一种方法:

if