计算机语言策略大本营:自由,平等,友爱。日记本

各种常用的处理命令

2022-09-24  本文已影响0人  千万别加香菜

提取染色体片段

       vcftools --gzvcf Duroc.vcf.gz \
                --chr NC_010484.4 \
                --from-bp 181225 \
                --to-bp 182187 \
                --out MC1R-Duroc.vcf \
                --recode \
                --recode-INFO-all 

提取文件中的某几列

awk '{print$1,$2}' fileame.vcf > filename.txt
##$1代表第一列

根据位置提取vcf文件对应位点的信息

vcftools --vcf 12_28.filter.snps.indels.vcf --positions test.txt --out test --recode

提取某一列数值满足条件的列

awk -F'\t' '{if ($3 == 1) print $1\t$2\t$3}' t.txt > 1.txt

提取某些样本

bcftools view -S id.txt 20211005_sheep_222_total.vcf.gz > tibetan_36.vcf 

###其中 id.txt 为一列样本id

去除vcf文件中带*的等位基因

grep -v "*" JBC-geno005-maf005.vcf > JBC-geno005-maf005.filter.vcf

格式转化

1 bed、bim、fam转vcf
plink --allow-extra-chr \
      --chr-set 26 \
      -bfile xll \
      --recode vcf-iid \
      --out xll
2 bed、bim、fam转map、ped
plink --allow-extra-chr \
      --chr-set 26 \
      -bfile filename \
      --recode \
      --out filename
3 ped、map转bed、bim、fam
plink --allow-extra-chr \
      --chr-set 26 \
      --file tibetan_36 \
      --make-bed \
      --out tibetan_36
4 map、ped转为vcf
plink --allow-extra-chr \
      --chr-set 26 \
      -file xll \
      --recode vcf-iid \
      --out xll
5 vcf转ped、map
plink --allow-extra-chr \
      --chr-set 26 \
      --vcf tibetan_36.vcf \
      --recode \
      --double-id \   
      --out tibetan_36
###double-id两个family id 和idividual id一样,所以加上了这个代码
6 vcf转bed、bim、fam
plink --allow-extra-chr \
      --chr-set 26 \ 
      -vcf XXX.vcf \
      --make-bed \
      --double-id \
      --out XXX

缺失率统计

## 按照位点统计
vcftools --gzvcf test.vcf.gz \
         --missing-site \
         --out test.SNP_missing 
## 按照个体统计
vcftools --vcf  test.vcf   \
         --missing-indv \
         --out test.SNP_missing

过滤indel和snp

## INDEL
vcftools --remove-indels \
         --recode \
         --recode-INFO-all \
         --vcf test.vcf \
         --stdout \
         > test.snp.vcf
## SNP
vcftools --keep-only-indels  \
         --recode \
         --recode-INFO-all \
         --vcf test.vcf \
         --stdout \
         > test.indel.vcf

去除多等位基因及indel

bcftools view -m 2 \
              -M 2 \
              --type "snps"  test.vcf.gz \
              -Ov \
              -o test.record.snps.vcf.gz

## 注意一下:-O为输出文件的格式,其中z为压缩的vcf文件,v为正常的vcf文件,
vcftools --vcf   test.vcf \
         --remove-indels \
         --min-alleles 2 \
         --max-alleles 2 \
         --recode \
         --recode-INFO-all \
         --stdout \
         > test.miss.snp.vcf
上一篇 下一篇

猜你喜欢

热点阅读