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

使用Pandas按列值出现次数对Excel表格数据进行排序

使用Pandas统计Excel列值出现次数并排序的解决方案

嘿,我来帮你搞定这个需求!先把你的样本数据清晰整理出来,然后一步步实现统计排序的操作:

你的样本数据(整理后):

A列B列内容
ItalyTransport for London.....
ItalyRoseanne Barr Actor leavin.....
AmericaAmericas Transport for London........
AmericaTransport for London.....
AmericaRoseanne Barr Actor leavin.....
FranceAmericas Transport for London........

你的需求很明确:统计A列各值的出现次数,按次数从多到少排序(America3次→Italy2次→France1次)。下面是具体的Pandas实现步骤:


步骤1:导入Pandas并读取/构造数据

首先导入Pandas库,如果是读取本地Excel文件,用pd.read_excel();如果是先测试样本数据,可以直接构造DataFrame:

import pandas as pd

# 方式1:读取本地Excel文件(假设文件名为sample.xlsx)
# df = pd.read_excel('sample.xlsx')

# 方式2:构造你的样本DataFrame(方便快速测试)
data = {
    'A': ['Italy', 'Italy', 'America', 'America', 'America', 'France'],
    'B': ['Transport for London.....', 'Roseanne Barr Actor leavin.....', 
          'Americas Transport for London........', 'Transport for London.....', 
          'Roseanne Barr Actor leavin.....', 'Americas Transport for London........']
}
df = pd.DataFrame(data)

步骤2:统计A列值的出现次数并排序

方法一:直接统计频次(得到各值的次数结果)

用value_counts()方法可以直接统计列值的出现次数,默认就是降序排列,保险起见可以显式指定排序规则:

# 统计A列各值的出现次数,按降序排序
count_result = df['A'].value_counts().sort_values(ascending=False)
print(count_result)

执行后输出:

America    3
Italy      2
France     1
Name: A, dtype: int64

如果需要把结果转换成更易读的DataFrame格式(比如后续要保存到Excel):

# 将Series转换为DataFrame并重新命名列
count_df = count_result.reset_index()
count_df.columns = ['A列值', '出现次数']
print(count_df)

输出:

A列值  出现次数
0  America      3
1    Italy      2
2   France      1

方法二:对原表格的行按A列值的频次排序(保留所有行)

如果你需要保留原表格的所有行,并且让出现次数多的A值对应的行排在前面,可以这样做:

# 先给每行添加对应的A值出现次数列
df['临时_出现次数'] = df['A'].map(df['A'].value_counts())
# 按出现次数降序排序,相同次数的可以按A列值排序(可选)
sorted_df = df.sort_values(by='临时_出现次数', ascending=False)
# 删除临时添加的列(如果不需要)
sorted_df = sorted_df.drop(columns='临时_出现次数')
print(sorted_df)

执行后输出的行顺序会是:所有America的行在前,接着是Italy的行,最后是France的行。


内容的提问来源于stack exchange,提问作者Tayyab Nasir

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:39:19