美文网首页
Tools:csvtk专业处理csv文件

Tools:csvtk专业处理csv文件

作者: wo_monic | 来源:发表于2021-04-22 10:39 被阅读0次

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 #转置

相关文章

网友评论

      本文标题:Tools:csvtk专业处理csv文件

      本文链接:https://www.haomeiwen.com/subject/adkxrltx.html