开始使用 csvkit

Shell 中的数据处理

Susan Sun

Data Person

什么是 csvkit?

csvkit:

Shell 中的数据处理

安装 csvkit

使用 Python 包管理器 pip 安装 csvkit

pip install csvkit

csvkit 升级到最新版本:

pip install --upgrade csvkit

完整说明:

https://csvkit.readthedocs.io/en/latest/tutorial.html.

Shell 中的数据处理

浏览 csvkit 手册

Shell 中的数据处理

in2csv:将文件转换为 CSV

网页版文档:

https://csvkit.readthedocs.io/en/latest/scripts/in2csv.html

命令行文档:

in2csv --help

in2csv -h
usage: in2csv [-h] [-d DELIMITER] [-t] [-q QUOTECHAR] [-u {0,1,2,3}] [-b]
              [-p ESCAPECHAR] [-z FIELD_SIZE_LIMIT] [-e ENCODING] [-L LOCALE]
              [-S] [--blanks] [--date-format DATE_FORMAT]
              [--datetime-format DATETIME_FORMAT] [-H] [-K SKIP_LINES] [-v]
Shell 中的数据处理

in2csv:将文件转换为 CSV

语法:

in2csv SpotifyData.xlsx > SpotifyData.csv

将 Excel 的第一个工作表打印到控制台,不保存

in2csv SpotifyData.xlsx

符号 > 重定向输出并保存为新文件 SpotifyData.csv

> SpotifyData.csv
Shell 中的数据处理

in2csv:将文件转换为 CSV

使用 --names-n 选项打印 SpotifyData.xlsx 中所有工作表名称。

in2csv -n SpotifyData.xlsx
Worksheet1_Popularity
Worksheet2_MusicAttributes

使用 --sheet 选项并指定要转换的工作表 "Worksheet1_Popularity"

in2csv SpotifyData.xlsx --sheet "Worksheet1_Popularity" > Spotify_Popularity.csv
Shell 中的数据处理

in2csv:将文件转换为 CSV

in2csv 不会在控制台打印日志。

in2csv SpotifyData.xlsx --sheet "Worksheet1_Popularity" > Spotify_Popularity.csv

快速检查:

ls
SpotifyData.xlsx  Spotify_Popularity.csv  backup  bin
Shell 中的数据处理

csvlook:命令行数据预览

csvlook:在命令行以 Markdown 兼容的等宽格式渲染 CSV

文档:

csvlook -h
usage: csvlook [-h] [-d DELIMITER] [-t] [-q QUOTECHAR] [-u {0,1,2,3}] [-b]
               [-p ESCAPECHAR] [-z FIELD_SIZE_LIMIT] [-e ENCODING] [-L LOCALE]
               [-S] [--blanks] [--date-format DATE_FORMAT]
Shell 中的数据处理

csvlook:命令行数据预览

语法:

csvlook Spotify_Popularity.csv
| track_id               | popularity |
| ---------------------- | ---------- |
| 118GQ70Sp6pMqn6w1oKuki |          7 |
| 6S7cr72a7a8RVAXzDCRj6m |          7 |
| 7h2qWpMJzIVtiP30E8VDW4 |          7 |
| 3KVQFxJ5CWOcbxdpPYdi4o |          7 |
| 0JjNrI1xmsTfhaiU1R6OVc |          7 |
| 3HjTcZt29JUHg5m60QhlMw |          7 |
Shell 中的数据处理

csvstat:CSV 文件的描述性统计

csvstat:输出 CSV 各列的描述性统计(如均值、中位数、唯一值计数)

文档:

csvstat -h
usage: csvstat [-h] [-d DELIMITER] [-t] [-q QUOTECHAR] [-u {0,1,2,3}] [-b]
               [-p ESCAPECHAR] [-z FIELD_SIZE_LIMIT] [-e ENCODING] [-S] [-H]
               [-K SKIP_LINES] [-v] [-l] [--zero] [-V] [--csv] [-n]
Shell 中的数据处理

csvstat:CSV 文件的描述性统计

语法:

csvstat Spotify_Popularity.csv
  1. "track_id"

        Type of data:          Text
        Contains null values:  False
        Unique values:         24
        Longest value:         22 characters
        Most common values:    118GQ70Sp6pMqn6w1oKuki (1x)
                               6S7cr72a7a8RVAXzDCRj6m (1x)
Shell 中的数据处理

来试试 csvkit!

Shell 中的数据处理

Preparing Video For Download...