GithubHelp home page GithubHelp logo

xwu35 / virusvariantviewr Goto Github PK

View Code? Open in Web Editor NEW

This project forked from rachelrodgers/virusvariantviewr

0.0 0.0 0.0 18.76 MB

Snakemake workflow for detecting CR6 or CW3 viral variants.

Shell 2.90% Python 62.65% R 34.45%

virusvariantviewr's Introduction

VirusVariantViewR


Snakemake workflow for VirusVariantViewR pipeline

Please visit the VirusVariantViewR application:

https://baldridge-lab-wustl.shinyapps.io/VirusVariantViewR/


VariantViewR consists of a data analysis pipeline (Snakemake worfkow) and R Shiny application originally developed for the analysis of viral variant information (specifically, murine norovirus CR6 variants). The pipeline and application also work with murine norovirus CW3 variants. The application continues to be modified and developed.

The full pipeline consists of several steps prior to interaction with the application.

This repository is for the workflow. Please visit here for the companion R Shiny application.

This Snakemake workflow can be used on different computing systems. Currently it is written for the HTCF cluster using the SLURM manager and a Snakemake profile. Running on a different machine may require the deletion of certain "module load" or "ml" commands within the rules of the Snakefile, and editing the config file(s) appropriately.

How to use:

  1. Clone the repository (for HTCF users, clone to your /scratch/ directory):
git clone --recurse-submodules https://github.com/RachelRodgers/VirusVariantViewR.git
  1. For HTCF or other Slurm users, make a directory to hold the snakemake profile:
mkdir -p ~/.config/snakemake/slurm_vvr
  1. Edit the config.yaml file inside the config directory to your user email:
--mail-user=yourEmailAddress
  1. Copy the cluster submit and profile files to the appropriate locations:
cd VirusVariantViewR
cp config/config.yaml ~/.config/snakemake/slurm_vvr
cp slurm-submit/*.py ~/.config/snakemake
  1. Create a directory to hold your raw sequencing reads and move your data into that directory.

  2. Edit the vvr_config.yaml file (under /config/) to adjust the data set name, path to your reads, and other parameters as needed.

  3. Submit in one of two ways:

    a. With sbatch script (preferred for HTCF/Slurm) users:

    sbatch submit_vvr_snake.sbatch
    

    b. Interactively (better for troubleshooting):

    # start an interactive session (for HTCF users):
    srun --mem=48G --cpus-per-task=8 -J interactive -p interactive --pty /bin/bash -l
    
    # load snakemake:
    ml snakemake/5.10.0-python-3.6.5
    
    # dry run (prints steps and stops):
    snakemake --profile slurm_vvr -n
    
    # production run (run steps):
    snakemake --profile slurm_vvr
    

(HTCF/Slurm users): See Slurm output files in logs_slurm/ directory which will generate inside the hecatomb_htcf_snake/ directory.

  1. Pipeline output will be in the results directory (contained within a directory matching your DataSetName).
  2. Visualize the data locally with the VirusVariantViewR-RShiny-Application!

virusvariantviewr's People

Contributors

rachelrodgers avatar rrodgers12 avatar

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.