Heads up:
We’re moving the GATK website, docs and forum to a new platform. Read the full story and breakdown of key changes on this blog.
Notice:
If you happen to see a question you know the answer to, please do chime in and help your fellow community members. We encourage our fourm members to be more involved, jump in and help out your fellow researchers with their questions. GATK forum is a community forum and helping each other with using GATK tools and research is the cornerstone of our success as a genomics research community.We appreciate your help!

Test-drive the GATK tools and Best Practices pipelines on Terra


Check out this blog post to learn how you can get started with GATK and try out the pipelines in preconfigured workspaces (with a user-friendly interface!) without having to install anything.
Attention:
We will be out of the office for a Broad Institute event from Dec 10th to Dec 11th 2019. We will be back to monitor the GATK forum on Dec 12th 2019. In the meantime we encourage you to help out other community members with their queries.
Thank you for your patience!

What is the difference between --truth-sensitivity-tranche and --ts-filter-level ?

I'm using GATK v4.0.3.0.

I'm wanting to use the recommended ApplyVQSR --ts-filter-level values, as specified at the end of GATK's document #1259 (albeit this document was written for GATK3, but I assume the same recommendations apply to GATK4)

Does that mean I need to specify the same values for VariantRecalibrator's --truth-sensitivity-tranche? So for example:
VariantRecalibrator --truth-sensitivity-tranche 99.5 --mode SNP
VariantRecalibrator --truth-sensitivity-tranche 99.0 --mode INDEL
ApplyVQSR --ts-filter-level 99.5 --mode SNP
ApplyVQSR --ts-filter-level 99.0 --mode INDEL

Best Answer

  • wertyuwertyu
    Accepted Answer
    I performed a series of quick tests and I determined that yes you do need to add the same --truth-sensitivity-tranche as you do --ts-filter-level.
    If any one is interested, here is a rudimentary table of my result as an image.
    vqsr.jpg 128.3K

Answers

  • AdelaideRAdelaideR Member admin
    edited May 15

    Hi @wertyu

    These settings are specific to your data, as you may have more or less signal depending on what your threshold values are.

    As for the document referenced, the tranche values are only meant to be a general example.

    According to the advice in the documentation here

    You should determine the level of sensitivity that is appropriate for your specific project. Remember that higher sensitivity (more power to detect variants, yay!) comes at the cost of specificity (more false negatives, boo!). You have to choose at what point you want to set the tradeoff.
    
    
    Post edited by AdelaideR on
  • wertyuwertyu Member
    edited May 16
    Thank you for your reply @AdelaideR

    I understand that these cutoffs need to be determined. I haven't gotten that far just yet.

    I'm interested in a more detailed explanation of how the two flags work and how they influence each other.

    Please note that the function ApplyRecalibration, which you link, isn't in v4.0.3.0, but I believe ApplyRecalibration and ApplyVQSR are the same function but with a change of name between GATK3 and GATK4
  • AdelaideRAdelaideR Member admin

    Hi @wertyu

    I believe this discussion link may contain the information that you are looking for.

    I think it would be good to have a specific case to discuss for future reference. For example, set two different values with a known data set and observe how the plots differ.

    The instructions are just guidelines, every dataset has its own behavior.

  • wertyuwertyu Member
    Accepted Answer
    I performed a series of quick tests and I determined that yes you do need to add the same --truth-sensitivity-tranche as you do --ts-filter-level.
    If any one is interested, here is a rudimentary table of my result as an image.
    vqsr.jpg 128.3K
  • bshifawbshifaw Member, Broadie, Moderator admin

    Thanks for sharing @wertyu!

Sign In or Register to comment.