population call with svim
Chenglin20170390 opened this issue · 3 comments
Hi, many thanks for developing such a useful tool.
After using and comparing different kind of SV calling software, I found that svim it best for sv calling in my project. However, I can only use it for an individual sample. Are there have any function for population calling for svim? for example, sniffles + survivor for population sv calling.
Many thanks for your help.
Best,
Lin
Hi Lin,
thanks for your question. Currently, SVIM does not have any particular population calling features.
Nevertheless, you can follow the first two steps described for Sniffles and SURVIVOR here to predict and merge calls across a population:
# 1. Call variants for each sample
svim alignment sample1 alignments1.bam genome.fa
svim alignment sample2 alignments1.bam genome.fa
svim alignment sample3 alignments1.bam genome.fa
# 2. Produce list of variant call files
ls sample*/variants.vcf > vcf_files_raw_calls.txt
# 3. Merge calls across samples
./SURVIVOR merge vcf_files_raw_calls.txt 1000 1 1 -1 -1 -1 merged_SURVIVOR_1kbpdist_typesave.vcf
The third step (force calling), however, is not yet implemented in SVIM. I could add this to my to-do list if you would find this feature helpful.
Cheers
David
Hi David,
Many thanks for your quick response. I sure believe that population SV calling is helpful and convenient for us to compare SV with genotype between each other. And more importantly, we can do population analysis to infer population structure, such as PCA, fst etc.
I will try force calling first. Many thanks for your help and I am very appreciative that you could put population SV calling on your to-do list.
best,
Lin
Hi David - Just wanted to check if force calling made in on to your to-do list. Alternatively, Lin did you manage to implement this step? I'm haven't run svim yet but I'm assuming you don't get 0/0 genotypes so when you combine with a program like survivor or jasmine you have to assume a GT of 0/0 if the variant is absent in an individual. Force calling would avoid this assumption correct? Thanks, Kira