Question: Pipeline of structural variation calling using multiple tools for multiple samples
4
gravatar for michealsmith
3.6 years ago by
michealsmith740
michealsmith740 wrote:

I have 20 whole-genome sequences for certain complex disease and would like to look for rare or novel structural variants using different SV calling tools such as CNVnator, Pindel, Breakdancer..suggested by 1000 genome project. Also I'd like to include at least another 20 control WGS from 1000 genome project, in order to remove noisy background when calling SVs.

I'm familiar and experienced with each SV calling tool, but now confused about the pipeline of "integrating" these "multiple" tools for "multiple" samples.

Two pipelines I could think about is eithertool-centric or sample-centric: Pipeline1 (tool-centric). Make the calling using each SV tool. But I'd run multiple samples at the same time (many programs now support multiple sample calling), which is good for increasing sensitivity. Ideally I should run 20 patients + 20 control at the same time, but I don't think my disk space could hold so many big bam files simultaneously. So my plan is run three times with each time run 6 patients + 6 control. Then merge together.

  1. Would such results be the same as runnning 20 patients + 20 control? Zev.Kronenberg from my another post said most programs apply statistics on a per library/sample basis, so should be ok?

  2. Once I get vcf file containing information for multiple samples for each SV calling tool, how would I intersect or merge to look for overlapping callings supported by multiple tools? Using vcf-merge? vcf-isec?

Pipeline 2 (sample-centric): Make the calling using each SV tool, but this time run program independently for each sample. And for each sample, first prioritize for a list of most confident SV callings; then merge different samples together.

Anyway I'm looking for high-confident rare/novel SV, which is supposed to be very few, which need to pass very stringent filtering. So specificity is more important at the sacrifice of sensitivity.

But Question is : When merging high-confident SV calling from each sample, very likely I could see:

Sample 1:

chr1 14657 DEL

Sample 2:

chr1 14569 DEL

They are the same calling but with slightly different coordinate,how could I intersect them with all vcf information retained? Using vcftools-isec?

Hope make this clear

Many thanks

ADD COMMENTlink modified 12 months ago by RamRS24k • written 3.6 years ago by michealsmith740

Why are they the same?

ADD REPLYlink written 3.5 years ago by H.Hasani780

hi,

Very interesting ques. as I myself am struggling to digest what is spit out by SV callers, esp. when I want to find recurrent SVs. Like you very well pointed out: how to intersect? I am not conversant with SVs and they way they 'behave'. Anyways, regarding the 'integration' effort, I came across this meta-caller for integration. I haven't given it a try though. Still understanding what Lumpy & Delly are saying.

Another issue is what you do when you find an SV near/over a repeat. Many of them are false positives, but some could be genuine. Lumpy in this regard uses an exclusion list which is regions with high-coverage from Ceph samples, but I am not sure if this is enough to suppress potential false calls.

ADD REPLYlink modified 12 months ago by RamRS24k • written 3.5 years ago by Amitm1.6k
8
gravatar for QVINTVS_FABIVS_MAXIMVS
3.4 years ago by
USA SoCal
QVINTVS_FABIVS_MAXIMVS2.3k wrote:

This is the wild west of SV detection. There are too many callers each with advantages and disadvantages, but very few SV prioritization programs.

Each group does prioritization a little bit differently. I can speak for our pipeline which has been recently described in this publication: Frequency and Complexity of De Novo Structural Mutation in Autism

Specifically we tend to collapse CNV positions if the overlap is 90% reciprocal. I use an algorithm that finds the "median" CNV and for each overlapping CNV in other samples just use the "median" CNV positions

We prioritize positions based on the type of calling algorithm. Lumpy and Manta use discordant paired-ends so their positions are more accurate than ForestSV which uses coverage and a sliding window to call CNVs (ForestSV has one of the best duplication sensitivities. I don't know why people don't use it as much).

We also used genotyping algorithms (SVtyper and gtCNV) to remove poorly genotyping overlapping calls (like 50%-89% reciprocal).

Generally speaking when you report a final call set you should not have any overlapping CNVs within the same sample. But there may be overlapping alleles in your genotype matrix.

ADD COMMENTlink modified 3.4 years ago • written 3.4 years ago by QVINTVS_FABIVS_MAXIMVS2.3k
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 2308 users visited in the last hour