You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从含17个类别的分类变量中筛选出Top10高频类别?

筛选频率最高的10个分类类别/城市

以下是基于Python Pandas的实现方案,分两种场景处理:

场景1:处理单个分类变量(如city列)

如果city是单个列,包含17个不同城市名称,直接统计频次并取前10即可:

import pandas as pd

# 统计城市出现频次,按降序排列
city_frequency = df['city'].value_counts(ascending=False)

# 获取频次最高的10个城市
top10_cities = city_frequency.head(10)

# 提取城市名称列表(如果需要)
top10_city_list = top10_cities.index.tolist()

场景2:处理编码为17个哑变量的分类变量

如果分类变量被拆分为17个哑变量列(每列0/1表示是否属于该类别),通过求和统计每个类别的样本数:

# 先筛选出所有哑变量列(根据实际列名调整筛选规则)
dummy_columns = [col for col in df.columns if col.startswith('category_')]  # 示例:前缀为category_的列

# 统计每个哑变量对应的类别频次,降序排序
category_frequency = df[dummy_columns].sum().sort_values(ascending=False)

# 获取频次最高的10个类别
top10_categories = category_frequency.head(10)

# 提取类别名称列表(如果需要)
top10_category_list = top10_categories.index.tolist()

如果你的分类变量是单个列(包含17个唯一类别),直接复用场景1的value_counts方法即可。

内容的提问来源于stack exchange,提问作者Pawan Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 15:45:22