alan-turing-institute/CleverCSV

CleverCSV is a Python package for handling messy CSV files. It provides a drop-in replacement for the builtin CSV module with improved dialect detection, and comes with a handy command line application for working with CSV files.

它解决了什么问题

CSV 文件通常难以处理,因为它们缺乏统一的格式标准,导致出现分隔符、引号或转义字符不一致的“混乱”文件。CleverCSV 通过高精度自动检测正确的文件格式(或“方言”)解决了这个问题,使您无需手动检查即可加载和处理这些文件。

工作原理

CleverCSV 使用一种基于研究的方法,通过分析 CSV 文件中行长度和数据类型的模式来识别其结构。它作为 Python 内置 csv 模块的直接替代品,提供了改进的方言检测功能,以及一系列将数据直接加载到列表或 Pandas DataFrames 中的辅助函数。

适用人群

它专为经常处理真实世界 CSV 文件,且需要一种可靠、自动化的方式来处理不一致格式,而无需为每个文件编写自定义解析逻辑的数据科学家、开发人员和研究人员而设计。

主要亮点

  • 在方言检测方面实现了 97% 的准确率,在处理混乱文件时显著优于标准库工具。
  • 提供命令行界面,可快速检查、标准化或生成用于 CSV 文件的 Python 导入代码。
  • 提供与 Pandas 的无缝集成,便于进行数据分析。
  • 包含一个 pre-commit hook,可自动标准化版本控制仓库中的 CSV 文件。

相关

  • 项目
  • 项目
  • 项目
  • 项目