Python3,csvkit功能竟如此强大,不仅可以转换csv格式文件,还能进行数据处理和分析。
1、引言
小屌丝:鱼哥,excel文档如何转换成csv文档?
小鱼:这还不简单? 百度一下,全都有。
小屌丝:百度的那些教程我都看了,操作太麻烦,
小鱼:那你直接把后缀名“.xls” 改成“.csv”,岂不是更快
小屌丝:你扯淡呢~
小鱼:哈哈,我知道一个工具,也就一行代码的事。
小屌丝:果然你又有私货,快晒一下
小鱼:是这样晒吗?
小屌丝:我说share一下 excel转换csv的工具!
小鱼:哦,那我知道了。
2、csvkit
在日常工作中,excel转换成csv格式的文件,很常见,
如果按照百度的经验,先打开excel文档,在保存的时候,选择转换格式,然后在需要把编码格式转换一下,确实很费劲。
但是,我们今天来介绍一款超级奈斯的csv转换工具,一行代码就搞定。
对的,我先已经有人猜到了,它就是 csvkit。
为什么说它很奈斯,很强大,因为…
往下看!
2.1 基本介绍
我们先来了解什么是CSV文本:
- CSV(Comma-Separated Values)是一种文本文件,也叫作逗号分隔值文件格式。顾名思义,它就是用来保存纯文本,被分隔符分隔为多个字段;
- CSV文件能够被Excel、notepad++、Java、Python等各种软件读取,非常方便;
- 因为它结构简单、易传输、易读取的特性,使其广受个人和商业领域欢迎;
csvkit功能:
- csvkit是python的第三方库;
- csvkit是专门处理CSV文件的命令行工具,可以实现文件互转、数据处理、数据统计等,十分便捷;
了解基本信息,我们就来看看csvkit的功能。
2.2 功能示例
2.2.1 安装
由于csvkit是第三方库,所以,我们第一步就是安装,
老规矩,pip方式安装
pip install csvkit
其他方式安装:
安装过程,需要耐心等待一下,安装完成,就是这个样子
安装完,就到了激动人心的环节了。
2.2.2 Excel转CSV
我们先准备excel文件,内容是这样的
由于csvkit是命令行工具,所以,只需要一句代码,就可以转换
in2csv 个人喜好文档.xlsx > 个人喜好文档.csv
敲黑板:
>>需要先进入到 excel文档的目录下,然后再执行这条命令
运行结果
看看内容
非常完美,非常奈斯。
当然,还可以转换以下这些格式的文档:
- dbf
- fixed
- geojson
- json
- ndjson
2.2.3 对SQL数据库进行读写和查询操作
实例一:
从MySQL数据库中读取一张表存到本地CSV文件中,使用csvsql命令实现。
csvsql --db "mysql://user:pass@host/database?charset=utf8" --tables "test_table" --insert test_table.csv
实例二:
直接对MySQL数据库进行数据查询,使用sql2csv命令实现
sql2csv --db "mysql://user:pass@host/database?charset=utf8" --query "select * from test_table"
注意:
代码中–db参数后面需要输入数据库的信息,用于连接数据库。
2.2.4 CSV文件转换为Json格式
除了将Json文件转化为CSV格式外,csvkit也支持将CSV文件转化为Json格式,使用csvjson命令实现。
csvjson test.csv
注意:
如果你是做地理空间分析,还可以将csv文件转化为GeoJson格式。
2.2.5 数据处理和分析
csvkit中还有用于数据处理分析的命令,如下:
- csvcut:对数据进行索引切片
- csvgrep:对数据进行过滤,可按照正则表达式规则
- csvjoin:对不同数据表按键进行连接
- csvsort:对数据进行排序
- csvstack:将多个数据表进行合并
- csvlook:以 Markdown 兼容的固定宽度格式将 CSV 呈现到命令行
- csvstat:对数据进行简单的统计分析
3、总结
今天的内容,差不多就这么多了,
csvkit在实际的工作中,还是很好用的一款命令行工具。
既节省了时间,又节省了资源。
我是小鱼:
- CSDN 博客专家;
- 阿里云 专家博主;
- 51CTO博客专家;
- 51认证讲师;
- 金牌面试官;
关注我,带你学习更多更有趣的Python知识。
- 点赞
- 收藏
- 关注作者
评论(0)