All Projects → snakemake-workflows → Dna Seq Gatk Variant Calling

snakemake-workflows / Dna Seq Gatk Variant Calling

Licence: mit
This Snakemake pipeline implements the GATK best-practices workflow

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Dna Seq Gatk Variant Calling

Tensorhub
TensorHub is a library built on top of TensorFlow 2.0 to provide simple, modular and repeatable abstractions to accelerate deep learning research.
Stars: ✭ 48 (-63.91%)
Mutual labels:  reproducibility
Reproducible Research
A Reproducible Data Analysis Workflow with R Markdown, Git, Make, and Docker
Stars: ✭ 95 (-28.57%)
Mutual labels:  reproducibility
Steppy
Lightweight, Python library for fast and reproducible experimentation 🔬
Stars: ✭ 119 (-10.53%)
Mutual labels:  reproducibility
Drake Examples
Example workflows for the drake R package
Stars: ✭ 57 (-57.14%)
Mutual labels:  reproducibility
Drake
An R-focused pipeline toolkit for reproducibility and high-performance computing
Stars: ✭ 1,301 (+878.2%)
Mutual labels:  reproducibility
Vps Comparison
A comparison between some VPS providers. It uses Ansible to perform a series of automated benchmark tests over the VPS servers that you specify. It allows the reproducibility of those tests by anyone that wanted to compare these results to their own. All the tests results are available in order to provide independence and transparency.
Stars: ✭ 1,357 (+920.3%)
Mutual labels:  reproducibility
Open Solution Value Prediction
Open solution to the Santander Value Prediction Challenge 🐠
Stars: ✭ 34 (-74.44%)
Mutual labels:  reproducibility
Datapackager
An R package to enable reproducible data processing, packaging and sharing.
Stars: ✭ 125 (-6.02%)
Mutual labels:  reproducibility
Vistrails
VisTrails is an open-source data analysis and visualization tool. It provides a comprehensive provenance infrastructure that maintains detailed history information about the steps followed and data derived in the course of an exploratory task: VisTrails maintains provenance of data products, of the computational processes that derive these products and their executions.
Stars: ✭ 94 (-29.32%)
Mutual labels:  reproducibility
Reproducibility Guide
project page for creating a guide to reproducible research
Stars: ✭ 116 (-12.78%)
Mutual labels:  reproducibility
Garage
A toolkit for reproducible reinforcement learning research.
Stars: ✭ 1,103 (+729.32%)
Mutual labels:  reproducibility
Scalac Profiling
Implementation of SCP-010.
Stars: ✭ 90 (-32.33%)
Mutual labels:  reproducibility
Awesome Reproducible Research
A curated list of reproducible research case studies, projects, tutorials, and media
Stars: ✭ 106 (-20.3%)
Mutual labels:  reproducibility
Evalai
☁️ 🚀 📊 📈 Evaluating state of the art in AI
Stars: ✭ 1,087 (+717.29%)
Mutual labels:  reproducibility
Make Novice
Automation and Make
Stars: ✭ 122 (-8.27%)
Mutual labels:  reproducibility
Dvc
🦉Data Version Control | Git for Data & Models | ML Experiments Management
Stars: ✭ 9,004 (+6669.92%)
Mutual labels:  reproducibility
Enmf
This is our implementation of ENMF: Efficient Neural Matrix Factorization (TOIS. 38, 2020). This also provides a fair evaluation of existing state-of-the-art recommendation models.
Stars: ✭ 96 (-27.82%)
Mutual labels:  reproducibility
Batchtools
Tools for computation on batch systems
Stars: ✭ 127 (-4.51%)
Mutual labels:  reproducibility
Rl Medical
Deep Reinforcement Learning (DRL) agents applied to medical images
Stars: ✭ 123 (-7.52%)
Mutual labels:  reproducibility
Starters
R Package 📦 for initializing projects for various R activities 🔩
Stars: ✭ 111 (-16.54%)
Mutual labels:  reproducibility

Snakemake workflow: dna-seq-gatk-variant-calling

Snakemake GitHub actions status

This Snakemake pipeline implements the GATK best-practices workflow for calling small germline variants.

Authors

Usage

In any case, if you use this workflow in a paper, don't forget to give credits to the authors by citing the URL of this (original) repository and, if available, its DOI (see above).

Step 1: Obtain a copy of this workflow

  1. Create a new github repository using this workflow as a template.
  2. Clone the newly created repository to your local system, into the place where you want to perform the data analysis.

Step 2: Configure workflow

Configure the workflow according to your needs via editing the files config.yaml, samples.tsv and units.tsv.

Step 3: Execute workflow

This workflow will automatically download reference genomes and annotation. In order to save time and space, consider to use between workflow caching by adding the flag --cache to any of the commands below. The workflow already defines which rules are eligible for caching, so no further arguments are required. When caching is enabled, Snakemake will automatically share those steps between different instances of this workflow.

Test your configuration by performing a dry-run via

snakemake --use-conda -n

Execute the workflow locally via

snakemake --use-conda --cores $N

using $N cores or run it in a cluster environment via

snakemake --use-conda --cluster qsub --jobs 100

or

snakemake --use-conda --drmaa --jobs 100

If you not only want to fix the software stack but also the underlying OS, use

snakemake --use-conda --use-singularity

in combination with any of the modes above.

See the Snakemake documentation for further details (e.g. cloud execution).

Step 4: Investigate results

After successful execution, you can create a self-contained interactive HTML report with all results via:

snakemake --report report.html

This report can, e.g., be forwarded to your collaborators. An example (using some trivial test data) can be seen here.

Step 5: Commit changes

Whenever you change something, don't forget to commit the changes back to your github copy of the repository:

git commit -a
git push

Step 6: Obtain updates from upstream

Whenever you want to synchronize your workflow copy with new developments from upstream, do the following.

  1. Once, register the upstream repository in your local copy: git remote add -f upstream [email protected]:snakemake-workflows/dna-seq-gatk-variant-calling.git or git remote add -f upstream https://github.com/snakemake-workflows/dna-seq-gatk-variant-calling.git if you do not have setup ssh keys.
  2. Update the upstream version: git fetch upstream.
  3. Create a diff with the current version: git diff HEAD upstream/master rules scripts envs schemas report > upstream-changes.diff.
  4. Investigate the changes: vim upstream-changes.diff.
  5. Apply the modified diff via: git apply upstream-changes.diff.
  6. Carefully check whether you need to update the config files: git diff HEAD upstream/master config.yaml samples.tsv units.tsv. If so, do it manually, and only where necessary, since you would otherwise likely overwrite your settings and samples.

Step 7: Contribute back

In case you have also changed or added steps, please consider contributing them back to the original repository:

  1. Fork the original repo to a personal or lab account.
  2. Clone the fork to your local system, to a different place than where you ran your analysis.
  3. Copy the modified files from your analysis to the clone of your fork, e.g., cp -r workflow path/to/fork. Make sure to not accidentally copy config file contents or sample sheets. Instead, manually update the example config files if necessary.
  4. Commit and push your changes to your fork.
  5. Create a pull request against the original repository.

Testing

Test cases are in the subfolder .test. They are automtically executed via continuous integration with Github actions.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].