vcftools

作者: oddxix | 来源:发表于2018-09-27 15:16 被阅读32次

    vcftools是一种可以对VCF文件和BCF文件进行格式转换及过滤的工具,其中很多过滤及计算功能我们可以自己使用perl或者python编写脚本实现,但都不如这个工具的运算速度快。

    有些奇怪的是需要到网页上查看他的使用参数,Linux上没有参数查看
    参考:vcftools使用手册

    基本参数

    输入参数

    • –vcf <input_filename> 支持v4.0、v4.1或者v4.2版本的VCF文件
    • –gzvcf <input_filename> 通过gzipped压缩过的VCF文件
    • –bcf <input_filename> BCF2文件

    输出参数

    • –out <output_prefix> 输出文件,后面直接对输出文件命名
    • –stdout 可接管道符对输出结果进行重新定向
    • –temp <temporary_directory> 指定结果的输出目录

    过滤参数

    根据位置过滤

    • –chr <chromosome>
    • –not-chr <chromosome>
      包含或排除匹配的染色体位点
    • –from-bp
    • –to-bp
      这两个参数需要和–chr一起使用
      指定要处理的一系列站点的下限和上限
    • –positions<filename>
    • –exclude-positions <filename>
      根据文件中的位置列表包括或排除一组位点。输入文件的每一行应包含(制表符分隔的)染色体和位置
      ······

    根据位点过滤

    • –snp <string>字符串的名称可以匹配dbSNP的数据,适合人类基因组,该指令可多次使用</string>
    • –snps<filename>
    • -exclude <filename>
      包括或排除文件中给出的SNP列表

    变异类型过滤

    • –keep-only-indels 只保留indel标记
    • –remove-indels 删除indel标记

    根据flag过滤

    • –remove-filtered-all Removes all sites with a FILTER flag other than PASS.
    • –keep-filtered
    • –remove-filtered

    根据INFO过滤

    • –keep-INFO<string>
    • –remove-INFO<string>

    根据ALLELE过滤

    • –maf <float> MAF最小值过滤
    • –max-maf <float> MAF最大值过滤

    此处省去很多参数,具体参见vcftools官网

    根据基因型数值过滤

    • –min-meanDP<float>
    • –max-meanDP <float>根据测序深度进行过滤
    • –hwe<float>
    • –max-missing <float>完整度,该参数介于0,1之间

    根据材料过滤

    • –indv
    • –remove-indv
    • –keep<filename></filename>
    • –remove<filename></filename>
    • –max-indv

    基因型过滤参数

    • –remove-filtered-geno-all 排除flag不为’.’和’PASS’的基因型
    • –remove-filtered-geno <string>排除flag为string的基因型</string>
    • –minGQ <float>排除GQ低于这个参数的基因型</float>
    • –minDP<float></float>
    • –maxDP<float></float>

    计算统计

    核算多样性统计

    • –site-pi 计算所有SNP
    • –window-pi
    • –window-pi-step

    FST计算

    • –weir-fst-pop<filename></filename>
    • –fst-window-size
    • –fst-window-step

    其它计算

    • –het
    • –hardy
    • –site-quality 主要用于提取VCF文件中每个位点的QUAL信```
    • --missing-indv
    • --missing-site 计算每个位点的缺失率
    vcftools --vcf test.recode.vcf --missing-site  --out ms
    
    • –SNPdensity <integer>计算SNP在设定bin内的密度</integer>

    ...太多了详情见参考手册

    输出格式

    • –recode
    • –recode-bcf
    • –recode-INFO
    • –recode-INFO-all
    • –contigs

    格式转换

    • –012
    • –IMPUTE
    • –ldhat
    • –ldhat-geno
    • –BEAGLE-GL
    • –BEAGLE-PL
    • –plink
    vcftools --vcf all.filter.vcf --plink --out aa ;
    
    • –plink-tped
    • –chrom-map

    比较选项

    • DIFF VCF FILE
    • –diff<filename></filename>
    • –gzdiff<filename></filename>
    • –diff-bcf<filename></filename>
    • –diff-site
    • –diff-indv
    • –diff-site-discordance
    • –diff-indv-discordance
    • –diff-indv-map<filename></filename>
    • –diff-discordance-matrix
    • –diff-switch-error

    实例

    1.输出来自染色体1的输入vcf文件中所有位点的等位基因频率

    vcftools --gzvcf input_file.vcf.gz --freq --chr 1 --out chr1_analysis
    

    2.从输入vcf文件输出新的vcf文件,该文件删除任何indel位点

    vcftools --vcf input_file.vcf --remove-indels --recode --recode-INFO-all --out SNPs_only
    

    3.输出文件比较两个vcf文件中的站点

    vcftools --gzvcf input_file1.vcf.gz --gzdiff input_file2.vcf.gz --diff-site --out in1_v_in2
    

    4.将新的vcf文件输出到标准输出,没有任何具有过滤器标记的位点,然后使用gzip压缩它

    vcftools --gzvcf input_file.vcf.gz --remove-filtered-all --recode --stdout | gzip -c > output_PASS_only.vcf.gz
    

    5.为bcf文件中的每个站点输出Hardy-Weinberg p值,该站点没有任何缺失的基因型

    vcftools --bcf input_file.bcf --hardy --max-missing 1.0 --out output_noMissing
    

    6.在一系列位置输出核苷酸多样性

    zcat input_file.vcf.gz | vcftools --vcf - --site-pi --positions SNP_list.txt --out nucleotide_diversity
    

    相关文章

      网友评论

        本文标题:vcftools

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