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

Python Pandas如何按类别导出唯一Code至对应CSV文件?

提取Pandas DataFrame中各分类的唯一Code并保存为CSV

当然可以用unique()函数实现你的需求,结合Pandas的分组功能就能完成。下面是具体的实现步骤和代码:

  • 按Category列对DataFrame分组,对每个分组的Code列调用unique()获取唯一值
  • 遍历每个分组,将唯一Code转换为可保存的数据格式,输出为对应分类名称的CSV文件

完整实现代码

import pandas as pd

# 原始数据初始化
data = [['A', 'code31'], ['A', 'code31323'], ['G', 'code641'], ['F', 'code641'], 
        ['A', 'code2321'], ['F', 'code253'], ['A', 'code135821'], ['G', 'code2318']]
df = pd.DataFrame(data, columns=['Category', 'Code'])

# 分组提取每个类别的唯一Code
grouped_unique_codes = df.groupby('Category')['Code'].unique()

# 遍历分组保存为CSV
for category, codes in grouped_unique_codes.items():
    # 将唯一Code数组转为DataFrame,适配to_csv方法
    code_df = pd.DataFrame(codes, columns=['Code'])
    code_df.to_csv(f'{category}.csv', index=False)

代码说明

  • df.groupby('Category')['Code'].unique():通过分组操作,对每个分类下的Code列去重,返回一个以分类名为索引、唯一Code数组为值的Series
  • to_csv(f'{category}.csv', index=False):将每个分类的唯一Code保存为CSV文件,index=False用于避免写入多余的索引列

可选实现方式(用drop_duplicates先全局去重)

如果你更习惯先整体去重再分组保存,也可以这么写:

import pandas as pd

data = [['A', 'code31'], ['A', 'code31323'], ['G', 'code641'], ['F', 'code641'], 
        ['A', 'code2321'], ['F', 'code253'], ['A', 'code135821'], ['G', 'code2318']]
df = pd.DataFrame(data, columns=['Category', 'Code'])

# 先去除(Category, Code)的重复项
unique_df = df.drop_duplicates(subset=['Category', 'Code'])

# 分组保存每个类别的Code
for category, group in unique_df.groupby('Category'):
    group[['Code']].to_csv(f'{category}.csv', index=False)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 09:57:54