跳转至

csvtk是shen wei的作品,seqkit也是他写的。 csvtk githubs 安装conda install -c bioconda csvtk或者从https://github.com/shenwei356/csvtk/releases 下载二进制文件。 支持Linux,mac,windows.

相当于shell的sed,grep,awk,cut,uniq,sort,join的合集。优点是支持多线程,支持读写gz压缩文件。
一般默认输出到标准输出流,可以配合管道符使用

全局命令参数

默认的输入和输出文件都是csv格式。 参数如果需要使用引号, 一定要用单引号,不要用双引号。 可以直接读写gz压缩文件 -t 输入文件分割符为tab -T 输出文件分隔符为tab -j 32 指定32个cpu运行,默认16. -o output.gz 指定输出文件,后缀是gz,则直接输出gz压缩文件。


常用参数

-csvtk xlsx2csv

csvtk xlsx2csv -a test.xlsx #查看有几个sheet
csvtk xlsx2csv -i 2 -t test.xlsx #提取第2个sheet,输出格式为tab分隔符
csvtk xlsx2csv -i 2 test.xlsx #提取第2个sheet,输出格式为csv格式
  • csvtk nrow
csvtk nrow test.csv # 查看csv文件的行数
csvtk nrow -t test.txt # 查看tab分割符的文件的行数

-csvtk ncol (用法和nrow一样) csvtk xlsx2csv -i 3 test.xlsx|csvtk ncol #联合使用,从xlsx里获取指定sheet的列数 -csvtk filter2 csvtk filter2 -f '$5<0.05' test.csv 或者csvtk filter2 -f '$padj<0.05' test.csv #可以使用$5指定第5列过滤或者$padj直接使用列名过滤。 csvtk filter2 -f '$5>$4' test.csv #过滤第5列大于第4列的 csvtk filter2 -t -f '$5>0.03' test.tab 过滤tab分割符的第5列大于0.03的 -csv2xlsx csvtk csv2xlsx test.csv #会直接输出文件test.csv.xlsx csv2 -del-header csvtk del-header test.csv #删除头部 -add-header csvtk add-header -n 'genename,count,foldchange,pval,padj' test.csv #添加新的文件头 -rename csvtk rename -f 1,2,3,4,5 -n 'gene,count,foldchange,pvalue,padj' test.csv #直接重命名指定列的列名 csvtk rename -f 3 -n 'log2Foldchange' test.csv #指定列名重命名 -csvtk transpose csvtk transpose test.csv #转置

回到页面顶部