Coder Social home page Coder Social logo

caravagnalab / tumourevo Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 1.0 1.44 MB

Analysis pipleine to model tumour clonal evolution from WGS data (driver annotation, quality control of copy number calls, subclonal and mutational signature deconvolution)

License: GNU General Public License v3.0

cancer-evolution cancer-genomics copy-number-variation mutational-signatures population-genetics quality-control subclonal-deconvolution variant-annotation

tumourevo's Introduction

tumourevo

Analysis pipleine to model tumour clonal evolution from WGS data (driver annotation, quality control of copy number calls, subclonal and mutational signature deconvolution)

tumourevo's People

Contributors

nicola-calonaci avatar

Stargazers

 avatar

Watchers

 avatar  avatar

tumourevo's Issues

Driver Analysis

Driver Analysis is a subworkflow that does:

  • Global selection analysis (dndsCV)
  • Identification of genes driving positive/negative selection (dndsCV)
  • Identification of mutations with high immunogenicity (SOPRANO)

save the output of the tools to files and flags mutations in the mutation table accordingly.
Possible flags:

  • known driver (from a user defined list of drivers e.g. IntoGen) (boolean)
  • under_positive_selection (from dndsCV with user-defined significancy threshold) (boolean)
  • under_negative_selection (from dndsCV with user-defined significancy threshold) (boolean)
  • immunogenic (boolean)
  • quantities (from the various table) (integer/float/string)

Test workflow

Set-up single module level tests using nf-test.

  • Generate template for the simplest module (annotate_driver) @tucano :
    • Switch to external R script and rely on nextflow template

Subclonal Deconvolution

  • Mobster and VIBER

    • Filter out non-diploid mutations
  • Pyclone

    • Add full path inside the module to save outputs (allowing publication in publishDir)
  • ctree

    • move to meta and fix updates
  • Use meta tuple as input of the modules

    • Find a way to transpose elements inside the meta tuple to switch from multi to single sample
  • Generate config file

  • Drop single_sample/multi_sample modeality option and use flag e.g. --remove_tail once,all,never

Signatures Deconvolution

  • SigProfiler
    • Finalise dockerfile with all required modules related to SigProfiler (e.g. Extractor, MatrixGenerator etc.)
  • SparseSignatures

Genome interpreter

Generate summary results object with the following features:

  • Sample-wise information:

  • Mutation-wise information:

    • Karyotype
    • Assignment to single-sample cluster
    • Assignment to multi-sample cluster
    • Assignment to mutational signature
    • Selection score (dnds fashion)
  • Patient-wise information:

    • Sample tree (phylogeny)
    • Muller plot object

Test dataset

Generate test dataset from Sarek test bam files (two patients, two tumour samples + normal) using Sarek pipeline in two conditions:

  • Solve issue concerning Sarek recalibration step
  • Multi-sample variant calling (Mutect2)
  • Single-sample variant calling

Dataset for testing - three patients, with drivers, try single chromosome (if not enough add more):

  • One patient going to the lifter (with at least N private mutations)
  • One patient not going to the lifter
  • One patient that should go but no input BAM files provided
  • One patient with two samples, one of which contaminated (thrown away by TINC)

General Architecture

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.