csvtk

2022-10-25 19:27:56 浏览数 (1)

一、软件介绍

csvtk是 seqkit 与 taxonkit 作者开发的另外一款工具,专门用来处理表格数据,虽然名字称为 csvkit,但也可以处理 tsv 格式。可以对表格文件进行多种处理,包括统计,转换,集合,编辑,排序,绘图等操作。相比于 R 与 python 这些功能强大的软件,csvtk 是一个多功能的工具箱,是表格处理的“瑞士军刀”,特别适合处理一些简单的操作。与 csvtk 类似还有一个csvkit。

官网:http://bioinf.shenwei.me/csvtk/

手册:http://bioinf.shenwei.me/csvtk/usage/

中文手册:https://bioinf.shenwei.me/csvtk/chinese/

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

二、使用案例

代码语言:javascript复制
#安装软件
mamba install -y csvtk
#下载案例文件
git clone https://github.com/shenwei356/csvtk.git

#1 显示csv文件
cat names.csv | csvtk pretty

#2 转为markdown
cat names.csv  | csvtk csv2md

#3 用列或列名来选择指定列,可改变列的顺序
cat names.csv
cat names.csv  | csvtk cut -f 3,1 
cat names.csv  | csvtk cut -f last_name,id

#4 用通配符选择多列
cat names.csv  | csvtk cut -F -f '*name,id' | csvtk pretty

#5 按指定列搜索,默认精确匹配
cat names.csv | csvtk grep -f id -p 1 | csvtk pretty

#6 使用正则表达式匹配
cat names.csv  | csvtk grep -f id -p 1 -r | csvtk pretty

#7 分组计算
cat digitals2.csv | csvtk summary -i -g f1,f2 -f f4:sum,f5:sum | csvtk pretty

#8 合并文件
cat names.csv 
cat phones.csv 
csvtk join -f 'username;username' --keep-unmatched names.csv phones.csv
csvtk join -f 'username;username' --keep-unmatched names.csv phones.csv

#9 绘制直方图
csvtk -t plot hist grouped_data.tsv.gz -f 2 -o histogram.png

#10 绘制箱线图
csvtk -t plot box grouped_data.tsv.gz -g "Group" -f "GC Content" --width 3 -o boxplot.png

写在最后:有时间我们会努力更新的。大家互动交流可以前去论坛,地址在下面,复制去浏览器即可访问,弥补下公众号没有留言功能的缺憾。原地址暂未启用(bioinfoer.com)。

代码语言:javascript复制
sx.voiceclouds.cn

有些板块也可以预设为大家日常趣事的分享等,欢迎大家来提建议。

0 人点赞