Skip to content

Commit

Permalink
Merge pull request #28 from cnobles/report_temp
Browse files Browse the repository at this point in the history
Update to v0.9.4
  • Loading branch information
cnobles authored Jan 31, 2019
2 parents 2f79ea9 + 32244a8 commit 33b558e
Show file tree
Hide file tree
Showing 24 changed files with 1,223 additions and 144 deletions.
6 changes: 3 additions & 3 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@ jobs:
# Download and cache dependencies
- restore_cache:
keys:
- v1-dependencies-{{ checksum "etc/build.v0.9.0.yml" }}
- v1-dependencies-{{ checksum "etc/build.v0.9.2.txt" }}

- run:
name: install
command: |
bash install.sh
bash install.sh -v
- run:
name: run tests
Expand All @@ -30,4 +30,4 @@ jobs:
- save_cache:
paths:
- ~/miniconda3
key: v1-dependencies-{{ checksum "etc/build.v0.9.0.yml" }}
key: v1-dependencies-{{ checksum "etc/build.v0.9.2.txt" }}
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
.Ruserdata
*.RData
*.Rproj
*.Rmd
.snakemake
output
*.yml
Expand Down
2 changes: 1 addition & 1 deletion .version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v0.9.3
v0.9.4
55 changes: 41 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
Bioinformatic pipeline for processing iGUIDE and GUIDE-seq samples.

### Description
iGUIDE is a pipeline written in [snakemake](http://snakemake.readthedocs.io/) for processing and analyzing double-strand DNA break events. These events may be induced, such as by designer nucleases like Cas9, or spontaneous, as produced through DNA replication or ionizing radiation. A laboratory bench-side protocol accompanies this software pipeline, and can be found XXX.
iGUIDE is a pipeline written in [snakemake](http://snakemake.readthedocs.io/) for processing and analyzing double-strand DNA break events. These events may be induced, such as by designer nucleases like Cas9, or spontaneous, as produced through DNA replication or ionizing radiation. A laboratory bench-side protocol accompanies this software pipeline, and can be found [**https://doi.org/10.1186/s13059-019-1625-3**](https://doi.org/10.1186/s13059-019-1625-3).

Below, this readme gives the reader a overview of the pipeline, including how to install and process a sample dataset. Processing a sample data set is broken into three parts:

Expand All @@ -35,44 +35,71 @@ bash install.sh
cd path/to/iGUIDE
bash install.sh -e {env_name}
# Or include simulation test
cd path/to/iGUIDE
bash install.sh -t
# For help with install options:
cd path/to/iGUIDE
bash install.sh -h
```

### An Example Run
To perform a local test of running the iGUIDE informatic pipeline, run the below code after installing. This block first activates your conda environment, 'iguide' by default, and then creates a test directory within the analysis directory. The run information is stored in the run specific configuration file (config file). Using the '-np' flag with the snakemake call will perform a dry-run (won't actually process anything) and print the commands to the terminal, so you can see what snakemake is about to perform. Next, the test data is moved to the input directory underneath the new test run directory. Then the entirety of processing can start. Using the '--dag' flag and piping the output to 'dot -Tsvg' will generate a vector graphic of the directed acyclic graph (dag) workflow that snakemake will follow given the data provided.
To perform a local test of running the iGUIDE informatic pipeline, run the below code after installing. This block first activates your conda environment, 'iguide' by default, and then creates a test directory within the analysis directory. The run information is stored in the run specific configuration file (config file). Using the '-np' flag with the snakemake call will perform a dry-run (won't actually process anything) and print the commands to the terminal, so you can see what snakemake is about to perform. Next, the test data can be moved to the input directory underneath the new test run directory or the path to the input data needs to be included in the config file. Then the entirety of processing can start.

```
# If conda is not in your path ...
PREFIX=${HOME}/miniconda3
export PATH=${PATH}:${PREFIX}/bin
source ${HOME}/miniconda3/etc/profile.d/conda.sh
# Activate iguide environment
conda activate iguide
# Check the setup workflow
iguide setup configs/simulation.config.yml -- -np
# After constructing the config file and having reference files (i.e. sampleinfo)
# You can check the samples associated with the run.
iguide list_samples configs/simulation.config.yml
# Create test analysis directory
# (The simulation configuration file is used by default and does not need to be specified)
iguide setup configs/simulation.config.yml -- -np
iguide setup configs/simulation.config.yml
# Check the run workflow
# Process a simulation dataset
iguide run configs/simulation.config.yml -- -np
iguide run configs/simulation.config.yml -- --latency-wait 30
cat analysis/simulation/output/unique_sites.simulation.csv
# Generate test DAG graph
iguide run configs/simulation.config.yml -- --dag | dot -Tsvg > \
analysis/simulation/reports/simulation.dag.svg
# After run completion, generate a report in a different format than standard
iguide report analysis/simulation/output/edited_sites.simulation.rds \
-c configs/simulation.config.yml \
-o analysis/simulation/reports/report.simulation.pdf \
-s sampleInfo/simulation.supp.csv \
-t pdf
# Run iGUIDE to analyze simulation dataset
iguide run configs/simulation.config.yml -- --latency-wait 30
# When you are all finished and ready to archive / remove excess files, a minimal configuration
# can be achived with the 'clean' subcommand.
iguide clean configs/simulation.config.yml
# Output some of the analysis data to check.
cat analysis/simulation/output/unique_sites.simulation.csv
# Or you realized you messed up all the input and need to restart
iguide clean configs/simulation.config.yml --remove_proj
# Deactivate the environment
conda deactivate
```

### Changelog:

**v0.9.4 (January 30th, 2019)**

* Updated 'report' utility and formating
+ custom templates now accepted
+ included as subcommand, check with 'iguide report -h'
+ pdf and html options report 'nicely' even when printed from either
* Updated build to v0.9.2 to support new formating in report
* Builds are constructed from spec files rather than yaml requirements
* Included the 'clean' subcommand to reduce size of processed projects
+ after cleaning a project, only terminal data files will remain

**v0.9.3 (January 11th, 2019)**

* Added 'list_samples' subcommand to list samples within a project.
Expand Down
3 changes: 1 addition & 2 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,14 @@
Welcome to iGUIDE's documentation
==================================

===========
Description
===========

Software pipeline for processing and analyzing double-strand DNA break events.
These events may be induced, such as by designer nucleases like Cas9, or
spontaneous, as produced through DNA replication or ionizing radiation. A
laboratory bench-side protocol accompanies this software pipeline, and can be
found XXX.
found (https://doi.org/10.1186/s13059-019-1625-3).

This documentation gives the reader an overview of the pipeline, including
how to install and process a sample dataset. Processing a sample data set is
Expand Down
24 changes: 19 additions & 5 deletions docs/pages/quickstart.rst
Original file line number Diff line number Diff line change
Expand Up @@ -108,22 +108,36 @@ directory. The run information is stored in the run specific configuration file
dry-run (won't actually process anything) and print the commands to the
terminal, so you can see what snakemake is about to perform. Next, the test data
is moved to the input directory underneath the new test run directory. Then the
entirety of processing can start. Using the ``--dag`` flag and piping the output
to ``dot -Tsvg`` will generate a vector graphic of the directed acyclic graph
(dag) workflow that snakemake will follow given the data provided::
entirety of processing can start.::

# After constructing the config file and having reference files (i.e. sampleinfo)
# You can check the samples associated with the run.
iguide list_samples configs/simulation.config.yml

# Create test analysis directory
# (The simulation configuration file is used by default and does not need to be specified)
iguide setup configs/simulation.config.yml -- -np
iguide setup configs/simulation.config.yml

# Generate test DAG graph
# Process a simulation dataset
iguide run configs/simulation.config.yml -- -np
iguide run configs/simulation.config.yml -- --dag | dot -Tsvg > analysis/simulation/reports/simulation.dag.svg
iguide run configs/simulation.config.yml -- --latency-wait 30
cat analysis/simulation/output/unique_sites.simulation.csv

# After run completion, generate a report in a different format than standard
iguide report analysis/simulation/output/edited_sites.simulation.rds \
-c configs/simulation.config.yml \
-o analysis/simulation/reports/report.simulation.pdf \
-s sampleInfo/simulation.supp.csv \
-t pdf

# When you are all finished and ready to archive / remove excess files, a minimal configuration
# can be achived with the 'clean' subcommand.
iguide clean configs/simulation.config.yml

# Or you realized you messed up all the input and need to restart
iguide clean configs/simulation.config.yml --remove_proj


Uninstall
---------
Expand Down
Loading

0 comments on commit 33b558e

Please sign in to comment.