Skip to content
nikomc edited this page May 1, 2020 · 13 revisions

Welcome to the RegSeq wiki! Use the navigation bar on the right-hand side of this page to read details about the Reg-Seq protocol.

Visit the Code section of this repository to see the README file.

Notes on this Wiki Protocol

Experimental Caveats

This Wiki documents all of the steps necessary to perform the Reg-Seq protocol. We discuss two ways to perform Reg-Seq; one method clones DNA libraries onto a plasmid (pJK14) and expresses the libraries from this plasmid, whereas a second method is to integrate and express DNA libraries from the E. coli genome. The differences between these protocols are clearly annotated in the different Wiki pages. However, we have not performed Reg-Seq on genome-integrated libraries. We have only performed the Reg-Seq protocol on DNA libraries expressed from plasmids. Thus, any discussion on the genome-integrated methods should be taken for what they really are; an experimental possibility, not an experimental reality.

On LaTeX Equations

Throughout this Wiki, we display LaTeX equations. Please be aware that GitHub Wiki pages do not natively support LaTeX. Thus, we use a "cheat" throughout to display equations; in all cases, we insert our LaTeX equations into an application developed for this purpose, which converts the LaTeX into a Wiki-displayable format.

Installation of the RegSeq module

To reproduce many of the steps outlined in this Wiki protocol, you will need to use the RegSeq module -- a homegrown Python software package written explicitly for this work. The requirements can be installed by executing the following command using pip in the command line:

pip install -r requirements.txt

The software module itself can be installed locally by executing the command in the root directory,

pip install -e ./

When installed, a new folder mut.egg-info will be installed and is necessary to run any of the code.

Reg-Seq Package Dependencies

Some of the code files in this package rely on mpathic, a software package for quantitative modeling of massively parallel experiments and developed by GitHub user jbkinney. A link to the GitHub page for the mpathic package is available here.

Currently, installation of this package requires Linux or Mac OS. To install the mpathic package, please run the following commands within an Anaconda terminal:

conda create -n mpathic_env python=3.6.9 pip --> create a Python environment for version 3.6.9

source activate mpathic_env --> activate the python 3.6.9 environment

conda install mpathic -c wireland --> install the mpathic package, using username 'wireland'

conda install mpmath --> install another package, called mpmath

mpathic learn_model --help --> verify that the installation proceeded as expected. Running this command should populate the command terminal with a list of available functions.

If you encounter any issues with installation, please contact us through GitHub.

The modules contained in the RegSeq package include:

create_key_to_match_sequence_to_barcode.py : initial analysis script to match barcodes to sequences.

do_many.py : A script to parallelize analysis via Amazon AWS.

learn_model_mut.py : Infers the effect of mutation on gene expression for each base pair using MCMC. This is crucial for converting to an information footprint.

peak_utils.py : functions for information footprints.

plot_informationfootprint.py : Python script to generate information footprints from sequencing data.

utils.py : functions for analysis.

Setting up an MPAthic Kernel

After installing the MPAthic package, those notebooks and code blocks with dependencies can be executed. Note that modern versions of Anaconda do not automatically create kernels for new environments. Therefore, you must manually create a kernel while in the mpathic_env. To do that, execute:

python -m ipykernel install --user --name myenv --display-name "Python (myenv)"

from the new environment. Then, after opening the Jupyter notebook (e.g. checkmutations.ipynb), click on 'Kernel', 'Change Kernel', and select the newly-created kernel. You will now be able to import the package and execute the code.

Clone this wiki locally