Comments (7)
Thanks for your question. If you want to increase the specificity of Scramble, you can use the -n
option to increase the minimum number of clipped reads and the --pct-align
option to increase the threshold for percent length of clipped read that aligns to MEI sequence. You can also perform post hoc filtering on the Scramble output file. For example, since most Alu MEIs are full length or mostly full length, you can require that Alus have Start_in_MEI
that is < 20. This will remove MEI calls that might be false positives due to other kinds of structural variation that involve Alu sequence at the breakpoints. You can also filter on Alignment_Percent_Identity
as lower values are more likely to be false positives. If you do filter on Alignment_Percent_Identity
, you may want to set different thresholds for Alu, L1, and SVA since SVAs can have lower Alignment_Percent_Identity
and still be real calls.
I will note that the ideal Scramble use-case is for targeted sequencing data. Was this run on WGS? Also, the false negative calls identified by MELT, might be due to MEIs with 5' transductions which we would not expect Scramble to detect.
Happy to discuss further!
from scramble.
Thank you for a quick and informative reply. I have applied Alu filtering using Start_in_MEI
< 20 and it has reduced both the number of false positives and real calls:
Positives and negatives by class:
Alignment_Percent_Identity
distributions per MEI class for true and false positives:
Also, I was wondering why is targeted sequencing an ideal use case? Is it just depth?
from scramble.
Targeted sequencing is less likely to overlap with repetitive sequence in the genome and is less likely to produce false positive clipped clusters. Also, for performance, Scramble was intended for targeted NGS and may have memory issues with WGS.
Do you have a specific sensitivity/specificity goal for your use-case when running Scramble? Have you done a deep dive to characterize the false positive/negative calls? For example, MEIs with 5' transductions are not expected to picked up by Scramble.
from scramble.
Also, I would recommend using the PALMER MEI calls from the GIAB data set as a gold standard.
from scramble.
Thank you very much for your suggestions. I just wanted to share what we got when comparing with PALMER calls (obtained from https://academic.oup.com/nar/article/48/3/1146/5680708):
from scramble.
You might be using different bams than we did for the benchmarking in the Genetics in Medicine paper (https://www.nature.com/articles/s41436-020-0749-x, supporting info page 4). We had a sensitivity of 85% at default settings.
We downloaded the GIAB sample from ftp://ftp-trace.ncbi.nlm.nih.gov/giab/ftp/data/AshkenazimTrio/HG002_NA24385_son/NIST_HiSeq_HG002_Homogeneity-10953946/HG002Run01-11419412/HG002run1_S1.bam, and ftp://ftp-trace.ncbi.nlm.nih.gov/giab/ftp/data/AshkenazimTrio/HG002_NA24385_son/NIST_HiSeq_HG002_Homogeneity-10953946/HG002Run02-11611685/HG002-Run2_S1.bam).
Do you have a specific question I can help with? Can you provide a reproducible example of the issue you are having?
from scramble.
I've used BAMs produced by this workflow: https://bcbio-nextgen.readthedocs.io/en/latest/contents/germline_variants.html#workflow4-whole-genome-trio-50x-hg38
We simply wanted to see how well Scramble performs before adding it to bcbio. The remaining step is to make Scramble available via Bioconda (#6). Thanks again for all your help.
from scramble.
Related Issues (20)
- VCF Creation Issue HOT 3
- Segmentation fault HOT 1
- What to evaluate should be a mandatory argument HOT 1
- Error in write.table HOT 1
- filtering calls
- negative length vectors are not allowed HOT 3
- VCF not valid HOT 1
- Error in writing vcd
- Rare clusters have all "n"s in 4th field, causing R to fail
- Getting "Segmentation fault (core dumped)" when running against some bam files. HOT 1
- SCRAMble.R have error report.
- Empty vcf file after Error: subscript contains invalid names; result.txt_MEIs.txt shows MEI calls HOT 1
- Feature request: Add option for reference to cluster_identifier HOT 2
- Update scramble to 1.0.2 in bioconda HOT 2
- Fail to write VCF file - negative coordinates HOT 3
- Question: Is this still maintained?
- Error in .Call2("XStringSet_align_pairwiseAlignment", pattern, subject, : key 0 not in lookup table HOT 4
- Is it okay if I make a bioconda package for scramble? HOT 10
- Help with MEI annotation HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from scramble.