TTokenySpace
返回 Skills 列表

Csv Processor Free

自动检测编码和分隔符,支持读取、清洗、合并、拆分和类型转换的CSV数据预处理免费工具。

#中文
0

安装到 Tokeny(自动)

下载 ZIP
安装"csv-processor-free"技能
技能信息:
- 名称: Csv Processor Free
- 标识: csv-processor-free
- 描述: 自动检测编码和分隔符,支持读取、清洗、合并、拆分和类型转换的CSV数据预处理免费工具。
- 版本: 1.0.0
下载地址:
https://www.tokeny.space/api/skills/csv-processor-free/download
继续

复制上方内容到 Tokeny 客户端并在会话中发送即可自动安装;也可直接 下载 ZIP并拖动到技能窗口安装。

SKILL.md

CSV Processor(免费版)

面向数据工程师的 CSV 清洗与预处理工具,自动检测编码与分隔符,提供读取、清洗、合并、拆分与类型转换的完整能力。

概述

CSV 是行业软件(建筑、ERP、财务等)数据交换的通用格式,但不同软件导出的 CSV 在编码、分隔符、列名规范上差异巨大。CSV Processor 解决"拿到一份陌生 CSV 如何快速清洗为可用数据"的问题。

免费版覆盖个人数据工程师 90% 的日常需求:编码检测、分隔符嗅探、列名规范化、空值清理、类型转换、多文件合并、按列拆分。

核心价值

  • 自动编码检测:基于 chardet 自动识别 UTF-8/Latin-1/cp1252 等编码
  • 自动分隔符嗅探:统计逗号/分号/制表符/管道符出现频率
  • 列名规范化:统一为小写下划线格式,去除特殊字符
  • 智能类型转换:自动尝试数值与日期类型转换
  • 多文件合并:按行拼接或按键合并(类似 SQL JOIN)
  • 按列值拆分:按列的唯一值拆分为多个子文件

核心能力

能力域方法说明免费版覆盖
编码检测detect_encoding自动识别文件编码
分隔符嗅探detect_delimiter自动识别分隔符
文件画像profile_csv输出编码/分隔符/行数/列数
读取清洗read_csv自动检测 + 清洗
列名规范_clean_column_name小写下划线格式
空值清理clean_dataframe删除空行空列、去除空白
类型转换convert_types自动数值/日期转换
多文件合并merge_csvs行拼接或键合并
按列拆分split_csv按列值拆分
导出export_csv带 BOM 的 UTF-8
流式处理-大文件分块否(专业版)
自定义规则-清洗规则配置否(专业版)
数据校验-Schema 校验否(专业版)

核心功能执行

input_params参数进行配置。

输入: 用户提供核心功能执行所需的指令和必要参数。 处理: 解析核心功能执行的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回核心功能执行的响应数据,包含状态码、结果和日志。

  • 执行此能力时使用input_params参数,支持创建/查询/导出操作

参数配置与调用

config_options参数进行配置。

输入: 用户提供参数配置与调用所需的指令和必要参数。 处理: 解析参数配置与调用的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回参数配置与调用的响应数据,包含状态码、结果和日志。

  • 执行此能力时使用config_options参数,支持修改/重置/导入操作

结果处理与输出

output_format参数进行配置。

输入: 用户提供结果处理与输出所需的指令和必要参数。 处理: 解析结果处理与输出的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回结果处理与输出的响应数据,包含状态码、结果和日志。

  • 执行此能力时使用output_format参数,支持导出/保存/转换操作 能力覆盖范围:本skill的核心能力覆盖以下场景关键词:自动检测编码与分、隔符的、清洗工具、支持读取、合并与类型转换、Processor、是面向数据工程师、清洗与预处理工具、自动检测文件编码、与分隔符、提供读取、拆分与类型转换能、核心能力、编码自动检测、chardet、分隔符自动嗅探、制表符、列名规范化、空行空列清理、智能类型转换、导出带等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。

使用场景

场景一:建筑软件导出数据清洗(建筑行业数据工程师)

P6 进度计划软件导出的 CSV 使用 cp1252 编码、分号分隔、列名含空格与特殊字符。直接读取会乱码或解析错位。使用 CSV Processor 自动检测编码与分隔符,清洗后输出标准 UTF-8 CSV。

场景二:ERP 多月报表合并(财务数据工程师)

需要将 1-12 月的 ERP 导出 CSV 合并为年度汇总。各月 CSV 列一致,使用 merge_csvs 按行拼接,并自动添加来源文件标记。

场景三:按地区拆分全国数据(运维工程师)

全国销售数据 CSV 需要按地区拆分后分发给各地负责人。使用 split_csvregion 列的唯一值拆分,自动生成 region_华北.csvregion_华东.csv 等子文件。

场景四:编码乱码修复(全栈开发者)

收到的 CSV 文件在 Excel 中打开是乱码。使用 detect_encoding 识别实际编码(可能是 Latin-1),再用正确编码读取并导出为 UTF-8。

场景五:列名规范化(数据分析师)

上游 CSV 的列名是 "Order ID""Customer Name""Total Amount",含空格与大写。使用 _clean_column_name 规范化为 order_idcustomer_nametotal_amount,便于后续 SQL 查询。

不适用场景

以下场景CSV处理器 免费版不适合处理:

  • 实时流数据处理
  • 小规模数据手动分析
  • 非结构化文本情感分析

触发条件

需要数据分析、报表生成、统计洞察、数据可视化时使用。不适用于非本工具能力范围的需求。

快速开始

前置准备(约 30 秒)

  1. 确认 Python 3.8+ 已安装
  2. 安装依赖:
pip install pandas chardet
  1. 准备待处理的 CSV 文件

依赖详情

from csv_processor import ConstructionCSVHandler
# ...
handler = ConstructionCSVHandler()
profile = handler.profile_csv("export.csv")
print(f"编码: {profile.encoding}, 分隔符: '{profile.delimiter}'")

运行环境要求

  • Python:3.8+
  • 内存:建议 2GB+(处理 100MB 文件)
  • 操作系统:Windows / macOS / Linux

示例

文件画像与读取

from csv_processor import ConstructionCSVHandler
# ...
handler = ConstructionCSVHandler()
# ...
# 1. 先看文件画像
profile = handler.profile_csv("export.csv")
print(f"编码: {profile.encoding}")
print(f"分隔符: '{profile.delimiter}'")
print(f"是否有表头: {profile.has_header}")
print(f"行数: {profile.row_count}, 列数: {profile.column_count}")
print(f"列名: {profile.columns}")
# ...
# 2. 读取并清洗
df = handler.read_csv("export.csv")
print(f"加载 {len(df)} 行, {len(df.columns)} 列")

多文件合并

# 按行拼接(列一致时)
files = ["jan_export.csv", "feb_export.csv", "mar_export.csv"]
merged = handler.merge_csvs(files)
print(f"合并后 {len(merged)} 行")
# ...
# 按键合并(类似 SQL JOIN)
merged = handler.merge_csvs(
    ["orders.csv", "customers.csv"],
    on_column="customer_id"
)

按列值拆分

# 按地区拆分
df = handler.read_csv("national.csv")
files = handler.split_csv(df, group_column="region", output_dir="./regions/")
print(f"拆分为 {len(files)} 个文件: {files}")

类型转换

df = handler.read_csv("data.csv")
# ...
# 自动类型转换(尝试数值与日期)
df = handler.convert_types(df)
# ...
# 手动指定类型
df = handler.convert_types(df, type_map={
    "order_id": "str",      # 强制为字符串(保留前导零)
    "amount": "float",
    "quantity": "int",
    "created_at": "datetime"
})

导出

# 导出为带 BOM 的 UTF-8(Excel 友好)
handler.export_csv(df, "cleaned.csv", encoding="utf-8-sig", delimiter=",")
# ...
# 导出为分号分隔(欧洲 Excel)
handler.export_csv(df, "european.csv", encoding="utf-8-sig", delimiter=";")

最佳实践

1. 先画像再处理

拿到陌生 CSV 时,先用 profile_csv 查看编码、分隔符、行数、列数,确认无误后再读取处理。避免因编码或分隔符错误导致数据错位。

2. 列名规范化在读取后立即执行

read_csv 默认启用清洗(clean=True),会自动规范列名。如需保留原始列名,设置 clean=False

3. 类型转换优先自动

convert_types 不传 type_map 时会自动尝试数值与日期转换。自动转换后再手动修正误判的列(如身份证号被识别为整数)。

4. 合并前确认列一致

merge_csvs 按行拼接时要求列完全一致。合并前建议先 profile_csv 检查各文件列差异,不一致时先对齐。

5. 拆分时注意列基数

按列值拆分时,该列的唯一值数量决定生成文件数。高基数列(如用户 ID)会生成大量小文件,建议按低基数列(如地区、类目)拆分。

6. 导出编码按用途选择

  • 给 Excel 用:UTF-8 with BOM(utf-8-sig
  • 程序间交换:UTF-8 without BOM(utf-8
  • 遗留系统:按目标系统要求

7. 大文件注意内存

免费版将文件全量加载到内存,建议处理 100MB 以内的文件。超过 100MB 请使用专业版的流式处理。

常见问题

Q1:编码检测不准确?

chardet 基于样本检测,可能误判。可通过 detect_encoding 查看置信度,低置信度时手动指定编码:read_csv("data.csv", encoding="utf-8")

Q2:分隔符嗅探错误?

嗅探基于前 5000 字符的分隔符频率统计。如果表头不含分隔符,可能误判。可手动指定:read_csv("data.csv", delimiter=";")

Q3:列名规范化后与预期不符?

_clean_column_name 的规则是:转小写、空格与连字符转下划线、移除非字母数字字符。如需自定义规则,请使用专业版的自定义清洗配置。

Q4:合并时列顺序不一致?

merge_csvs 按行拼接时按列名匹配,不要求顺序一致。但如果列名大小写不同(如 Name vs name),需要先统一。

Q5:类型转换失败的字段如何处理?

自动转换失败的字段会保持原样(字符串类型)。不会报错,但可能影响后续数值计算。建议转换后检查列类型:print(df.dtypes)

Q6:拆分生成的文件名包含特殊字符?

按列值拆分时,文件名会包含列值。如果列值含特殊字符(如 /\),可能导致文件名非法。建议先清洗列值或使用专业版的自定义命名规则。

依赖说明

运行环境

  • Agent 平台:支持 SKILL.md 的任意 AI Agent(Claude Code / Cursor / Codex / Gemini CLI 等)
  • 操作系统:Windows / macOS / Linux
  • Python:3.8+

第三方依赖

依赖项类型是否必需获取方式版本要求
LLM APIAPI必需由 Agent 内置 LLM 提供-
Python运行时必需官网下载3.8+
pandas第三方库必需pip install pandas1.3+
chardet第三方库必需pip install chardet4.0+

API Key 配置

  • 本 Skill 基于 Python 与第三方库,无需额外 API Key
  • 第三方库安装通过 pip 完成,无需 API 凭据

可用性分类

  • 分类:MD+EXEC(纯 Markdown 指令,功能需要 exec 命令行执行能力)
  • 说明:基于 Markdown 的 AI Skill,通过自然语言指令驱动 Agent 调用 Python 脚本完成任务

已知限制

本免费体验版限制以下高级功能:

  • 流式处理大文件(超过 100MB 的 CSV 分块读取与清洗)
  • 自定义清洗规则配置(列名映射、值替换、条件清洗)
  • Schema 校验与列类型强制
  • 增量合并与去重策略
  • 数据质量评分与报告
  • 多格式导出(Parquet / JSON / Excel)
  • 清洗日志与审计追踪

解锁全部功能请使用专业版:csv-processor-pro

  • 当前为免费版本,如需完整功能请升级到付费版获取全部能力

License 与版权声明

本 skill 基于原始作品改进,保留原始版权声明:

  • 原始作品:CSV Processor
  • 原始 license:MIT
  • 改进作品:CSV Processor(免费版)
  • 改进 license:MIT

本改进作品在原始作品基础上进行了深度差异化改造,包括但不限于:

  • 完全重写中文化文档与场景指南
  • 新增文件画像与最佳实践
  • 完善常见问题与故障排查
  • 增加免费版/专业版分层策略

错误处理

错误场景原因处理方式
配置错误参数缺失或格式错误检查依赖说明中的配置要求
运行时错误运行环境不满足确认运行环境符合依赖说明
网络错误连接超时或不可达执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案

输出格式

{
  "success": true,
  "data": {
    "result": "CSV处理器 免费版处理结果",
    "execution_time": "0.5s",
    "metadata": {
      "version": "1.0",
      "processor": "csv processor"
    }
  },
  "execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
  "error": null
}

评论

加载中…