首页 > 解决方案 > Python - 基于前 5 个出现的分类变量进行过滤

问题描述

我正在尝试通过过滤掉出现次数最多的 5 个国家/地区的行并将其保存到新的数据框中来创建一个新的数据框。

我尝试使用 .nlargest 但它不适用于分类数据。

谢谢你。

数据框示例

标签: pythonpandas

解决方案


使用Series.value_counts- 它返回按Series计数排序,因此对于最高值index,通过索引过滤值并传递给boolean indexingwith Series.isin

top5 = df['Country'].value_counts().index[:5]
df1 = df[df['Country'].isin(top5)]

推荐阅读