How To Split Vcf Files
2
0
Entering edit mode
3.9 years ago

I have a vcf file with 60 animals (columns) and I would like to split these animals in 10 subset with 6 animals chosen randomly per group. I'm using the following script, but it's not working:

head -n 60 my.vcf | grep "^#" > header

grep -v "^#" out.subgrupos.vcf > animals

split -l 6 animals

for i in x*;do cat header $i >$i.vcf && rm -f $i;done

rm -f header animals

I need to keep the header in each file. Is there another way to do that?

vcf vcftools • 1.0k views
ADD COMMENT
1
Entering edit mode
3.9 years ago
grep '#CHROM' -m1 my.vcf | cut -f 10- | tr "\t" "\n" | shuf | split -l 6 - animal
for F in animal*
do
     bcftools view --samples-file $F my.vcf > "split.${F}.vcf"  && rm "${F}"
done
ADD COMMENT

Login before adding your answer.

Traffic: 867 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6