我有一个熊猫数据框。数据框中的最后一列是数据框中每个唯一组(在这种情况下为物种分配)的RelAb
列的最大值,该值通过以下方式获得:
df_melted['Max'] = df_melted.groupby('Species')['RelAb'].transform('max')
如您所见,最大值在组的所有行中表示。每个组包含大量行。我将df
按最大值排序,每个最大值大约有100行。我的目标是根据最大值(即具有100 X 20行-2000行的df
)获得前20个组。我不想从数据框中的组中删除单个行,而是整个组。
我正在粘贴数据框的子集,其中组的最大值从一个“最大值”更改为下一个:
我的感觉是我需要转换最大值,以便一个值代表整个组,然后根据该列进行排序,也许是这样?
就上下文而言,我这样做的原因是因为我计划针对每个样本制作一个堆叠的条形图,其中表中种类最多。现在,种类太多了,因此使堆积的条形图没有信息。
答案 0 :(得分:1)
一种方法:
if