seqpipe 0.0.7
Sequencing pipeline
License: MIT
Keywords: bioinformatics sequencing pipeline alignment mapping

RNAseq Analysis Pipeline
========================

|PyPI| |Build Status|

Installation
------------

Install ``seqpipe`` using ``pip``:

.. code:: bash

    $ pip install seqpipe

``seqpipe`` offers various commandline-arguments:

::

    $ seqpipe --help
    Usage: seqpipe [OPTIONS] COMMAND [ARGS]...

    Options:
      --help  Show this message and exit.

    Commands:
      map
      stats

In particular, the mapping pipeline is interesting:

.. code:: bash

    $ seqpipe map --help
    Usage: seqpipe map [OPTIONS]

    Options:
      -r, --read PATH             Path to read file/directory.  [required]
      -g, --genome PATH           Path to genome file/directory.  [required]
      -o, --output DIRECTORY      Directory to save results to.
      --scripts / --no-scripts    Whether to execute scripts or not.
      -m, --min-read-len INTEGER  Minimal read length.
      -M, --max-read-len INTEGER  Maximal read length.
      -b, --bowtie-args TEXT      Extra arguments for bowtie.
      -t, --threads INTEGER       How many threads to run in.
      --help                      Show this message and exit.

Usage
-----

To map a directory of reads to two references, execute it as follows:

.. code:: bash

    $ seqpipe map \
      -r seqpipe/tests/data/reads/ \
      -g seqpipe/tests/data/references/10-ref.fa \
      -g seqpipe/tests/data/references/20-ref.fa \
      -o my_mapping

This will create a ``my_mapping`` directory which contains two
directories: \* ``runs`` stores all data related to each individual read
file \* ``results`` contains data generated by scripts from the
``scripts`` folder

An overview of the read distributions can then be generated via:

.. code:: bash

    $ seqpipe stats plot_rdist -o my_images/ my_mapping/

Extras
------

Additional useful scripts are contained in ``extra``. The entry point is
``main.py`` (check ``python ./extra/main.py --help`` for help).

The respective individual files are: \* ``sequential_pipeline.sh`` \*
map length-filtered reads against multiple genomes in succession \*
``plot_sequential_data.py`` \* visualize data obtained from sequential
pipeline \* ``plot_expression_differences.py`` \* visualize differences
in RNAseq expression levels over pairs of samples

Links
-----

-  `Github <https://github.com/kpj/SeqPipe>`__
-  `PyPi <https://pypi.python.org/pypi/seqpipe>`__

Dependencies
------------

Tools: \* cutadapt \* fastqc \* `more
info <http://www.bioinformatics.babraham.ac.uk/projects/fastqc/Help/3%20Analysis%20Modules/>`__
\* bowtie \* samtools \*
`specifications <https://samtools.github.io/hts-specs/SAMv1.pdf>`__ \*
bedtools

Languages: \* bash \* python \* numpy \* pandas \* seaborn \* matplotlib
\* tqdm \* biopython \* pysam \* joblib \* click \* sh \* colorama

Development notes
-----------------

Tests
~~~~~

Run tests using:

.. code:: bash

    $ tox

Release package
~~~~~~~~~~~~~~~

This guide assumes a properly setup ``~/.pypirc``.

Build package:

.. code:: bash

    $ python setup.py sdist

Register it (only once):

.. code:: bash

    $ twine register dist/seqpipe-X.Y.Z.tar.gz

Try installation locally:

.. code:: bash

    $ rm -rf /tmp/seqpipe_tmp
    $ virtualenv /tmp/seqpipe_tmp
    $ /tmp/seqpipe_tmp/bin/pip install dist/seqpipe-X.Y.Z.tar.gz
    $ /tmp/seqpipe_tmp/bin/seqpipe --help

Try installation using test-servers:

.. code:: bash

    $ twine upload -r test dist/seqpipe-X.Y.Z.tar.gz
    $ pip install -i https://testpypi.python.org/pypi seqpipe
    $ seqpipe --help

Check `testpypi-page <https://testpypi.python.org/pypi/seqpipe>`__.

Finally, install it on actual server:

.. code:: bash

    $ twine upload dist/seqpipe-X.Y.Z.tar.gz
    $ pip install -U seqpipe
    $ seqpipe --help

Check actual `pypi-page <https://pypi.python.org/pypi/seqpipe>`__.

Misc
~~~~

Create dev-builds with:

.. code:: bash

    $ pip install --user -e .

Run uninstalled version:

.. code:: bash

    $ python -m seqpipe.main

Enable bash-autocompletion as follows:

.. code:: bash

    $ _SEQPIPE_COMPLETE=source seqpipe >> ~/.bashrc
    $ . ~/.bashrc

.. |PyPI| image:: https://img.shields.io/pypi/v/seqpipe.svg?style=flat
   :target: 
.. |Build Status| image:: https://travis-ci.org/kpj/SeqPipe.svg?branch=master
   :target: https://travis-ci.org/kpj/SeqPipe