跳转到主要内容

A命令行工具和Python API,用于操作CSV数据,例如提取列和重新排序。它有点像Unix工具'cut'

项目描述

Python CSV模块的简单包装,提供从CSV文件中过滤列的命令行工具。这对于标准工具如awk难以处理CSV文件中的引号和转义很有用。

基本上,它有点像 cut 但用于CSV。

安装

从PyPi

pip install csvfilter

使用

in.csv中提取字段1、3和5

csvfilter -f 1,3,5 in.csv > out.csv

从标准输入中提取除了第2列之外的所有字段

cat in.csv | csvfilter -f 2 -i > out.csv

将管道分隔的文件转换为逗号分隔(默认情况下,输出为逗号分隔)

csvfilter -d"|" in.psv > out.csv

跳过那个讨厌的标题行

cat in.csv | csvfilter --skip=1

如你所见,CSV数据可以通过标准输入或直接在文件上运行csvfilter来提供。

帮助信息在通常的位置

$ csvfilter --help

Usage: csvfilter [options] [inputfile]

Source: https://github.com/codeinthehole/csvfilter/

Options:
-h, --help            show this help message and exit
-f FIELDS, --fields=FIELDS
                        Specify which fields to pluck
-s SKIP, --skip=SKIP  Number of rows to skip
-d DELIMITER, --delimiter=DELIMITER
                        Delimiter of incoming CSV data
-q QUOTECHAR, --quotechar=QUOTECHAR
                        Quotechar of incoming CSV data

-i, --inverse         Invert the filter - ie drop the selected fields
--out-delimiter=OUT_DELIMITER
                        Delimiter to use for output
--out-quotechar=OUT_QUOTECHAR
                        Quote character to use for output

报告问题

使用Github问题跟踪器或,更好的是…

贡献

在克隆之后,安装测试要求

pip install -r requirements.txt

以“开发”模式安装包,以便将可执行文件添加到您的路径

./setup.py develop

使用以下命令运行测试

nosetests

并且,如果您需要,可以使用测试用例文件来测试您的修改

cat fixtures/au.csv | csvfilter -f 3,1,2 -s 1
csvfilter fixutres/au.csv -f 1,2 -i

祝您玩得开心。

项目详情


下载文件

下载适用于您的平台文件。如果您不确定要选择哪个,请了解更多关于安装软件包的信息。

源分布

csvfilter-0.3.1.tar.gz (4.0 kB 查看哈希值)

上传时间 源代码

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面