以下是使用tabix
从特定区域获取VCF文件的代码,然后使用vcftools中的“keep”选项对特定(欧洲)人口进行过滤。
####select specific population
if [ "$POP_FILE" != "" ]; then
vcftools --vcf temp.vcf --keep $POP_FILE --recode --recode-INFO-all > temp2.vcf 2> /dev/null
else
cp -f temp.vcf temp2.vcf
fi
问题:它会创建recode.vcf文件,但由于temp2文件为空,因此不会发生重定向
答案 0 :(得分:1)
我会避免使用vcftools并使用bcftools(https://github.com/samtools/bcftools)代替:
if [ "$POP_FILE" != "" ]; then
bcftools view temp.vcf -S $POP_FILE -o temp2.vcf
else
cp -f temp.vcf temp2.vcf
fi
安装bcftools:
git clone --branch=develop git://github.com/samtools/bcftools.git
git clone --branch=develop git://github.com/samtools/htslib.git
cd htslib && make && cd ..
cd bcftools && make && cd ..
sudo cp bcftools/bcftools /usr/local/bin/