Python3,csvkit功能竟如此强大,不仅可以转换csv格式文件,还能进行数据处理和分析。

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 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

其他方式安装:


《Python3,选择Python自动安装第三方库,从此跟pip说拜拜!!》

《Python3:我低调的只用一行代码,就导入Python所有库!!》

安装过程,需要耐心等待一下,安装完成,就是这个样子

image.png


安装完,就到了激动人心的环节了。


2.2.2 Excel转CSV

我们先准备excel文件,内容是这样的

image.png

由于csvkit是命令行工具,所以,只需要一句代码,就可以转换


in2csv 个人喜好文档.xlsx > 个人喜好文档.csv

敲黑板:


需要先进入到 excel文档的目录下,然后再执行这条命令


运行结果

image.png

看看内容

image.png

非常完美,非常奈斯。


当然,还可以转换以下这些格式的文档:


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在实际的工作中,还是很好用的一款命令行工具。


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
7天前
|
设计模式 缓存 监控
Python装饰器:优雅增强函数功能
Python装饰器:优雅增强函数功能
194 101
|
9天前
|
缓存 监控 算法
唯品会item_search - 按关键字搜索 VIP 商品接口深度分析及 Python 实现
唯品会item_search接口支持通过关键词、分类、价格等条件检索商品,广泛应用于电商数据分析、竞品监控与市场调研。结合Python可实现搜索、分析、可视化及数据导出,助力精准决策。
|
9天前
|
缓存 监控 算法
苏宁item_search - 按关键字搜索商品接口深度分析及 Python 实现
苏宁item_search接口支持通过关键词、分类、价格等条件检索商品,广泛应用于电商分析、竞品监控等场景。具备多维度筛选、分页获取、数据丰富等特性,结合Python可实现搜索、分析与可视化,助力市场研究与决策。
|
9天前
|
缓存 监控 算法
苏宁item_get - 获得商品详情接口深度# 深度分析及 Python 实现
苏宁易购item_get接口可实时获取商品价格、库存、促销等详情,支持电商数据分析与竞品监控。需认证接入,遵守调用限制,适用于价格监控、销售分析等场景,助力精准营销决策。(238字)
|
9天前
|
监控 算法 数据安全/隐私保护
唯品会 item_get - 获得 VIP 商品详情接口深度分析及 Python 实现
唯品会item_get接口通过商品ID获取商品详情,支持价格、库存、促销等数据抓取,适用于电商分析、竞品监控与价格追踪,结合Python实现可高效完成数据获取、分析与可视化,助力精准营销决策。
|
7天前
|
JSON 缓存 供应链
电子元件 item_search - 按关键字搜索商品接口深度分析及 Python 实现
本文深入解析电子元件item_search接口的设计逻辑与Python实现,涵盖参数化筛选、技术指标匹配、供应链属性过滤及替代型号推荐等核心功能,助力高效精准的电子元器件搜索与采购决策。
|
7天前
|
缓存 供应链 芯片
电子元件类商品 item_get - 商品详情接口深度分析及 Python 实现
电子元件商品接口需精准返回型号参数、规格属性、认证及库存等专业数据,支持供应链管理与采购决策。本文详解其接口特性、数据结构与Python实现方案。
|
12天前
|
缓存 算法 数据安全/隐私保护
VVICitem_search - 根据关键词取关键词取商品列表接口深度分析及 Python 实现
VVIC item_search接口支持关键词搜索服装商品,提供价格、销量、供应商等数据,助力市场调研与采购决策。
|
18天前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
190 102
|
18天前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
192 104

热门文章

最新文章

推荐镜像

更多