首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

分组并在Pandas DataFrame中查找每组前10%的记录

在Pandas DataFrame中分组并查找每组前10%的记录,可以使用groupby()函数和apply()函数来实现。

首先,使用groupby()函数将DataFrame按照指定的列进行分组。假设我们要按照列A进行分组,代码如下:

代码语言:txt
复制
grouped = df.groupby('A')

接下来,可以使用apply()函数对每个分组进行操作。在这里,我们可以使用apply()函数结合nlargest()函数来查找每个分组中前10%的记录。nlargest()函数可以按照指定的列进行降序排列,并返回指定数量的最大值。假设我们要按照列B进行排序,并返回前10%的记录,代码如下:

代码语言:txt
复制
result = grouped.apply(lambda x: x.nlargest(int(len(x) * 0.1), 'B'))

在上述代码中,lambda x: x.nlargest(int(len(x) * 0.1), 'B')表示对每个分组x,按照列B进行降序排列,并返回前10%的记录。

最后,result将包含每个分组中前10%的记录。

关于Pandas DataFrame的分组和排序操作,可以参考腾讯云的产品介绍链接:Pandas DataFrame分组和排序

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券