In silico optimization for multiplex PCR primer design for targeted sequencing applications
Project description
multiplex_wormhole
In silico optimization for multiplex PCR assays that minimized predicted primer dimer loads. The pipeline was developed for genotyping by amplicon sequencing (i.e., reduced SNP panel) applications, however, the process is transferable to any multiplex PCR targeted sequencing approach. The impetus for multiplex_wormhole was genotyping noninvasive wildlife genetic samples. Default primer design settings are therefore conservative and tailored towards amplifying low concentration and degraded DNA such as that found in fecal and hair samples.
Full documentation: https://mhallerud.github.io/multiplex_wormhole
Installation
Set up a virtual environment
multiplex_wormhole was built and tested on MacOS with Python v3.9.13 in the Spyder IDE managed under Anaconda-Navigator. For those new to Python or with existing python packages, Anaconda is the recommended virtual environment manager. For a conda virtual environment within your working directory:
conda create -n py39 python=3.9 #create new virtual env w/ python v3.9
conda activate py39 #enter virtual env
Some clusters used pixi instead of conda environments:
pixi init #initialize virtual env
pixi add "python=3.9" #set python version
pixi shell #enter virtual env
Install multiplex wormhole
pip install multiplex_wormhole
Note: Pixi/conda can be finicky... Dependening on your system, you may run into dependency errors here. If that happens, exit your virtual env and install the missing dependencies following the instructions below.
Back-up installation option
If pip install doesn't work, you can also install manually by taking the following steps (from the command line):
- Install Python dependencies to your virtual environment (replace "pixi add" with "conda install" if using conda):
pixi add primer3-py
pixi add pandas==1.4.4
pixi add numpy==1.24.4
pixi add matplotlib==3.5.2
Or, if not using a virtual environment:
pip install primer3-py>=2.0.0
pip install pandas>=1.4.4
pip install numpy>=1.24.4
pip install matplotlib>=3.5.2
- Download source code from GitHub:
git clone https://github.com/mhallerud/multiplex_wormhole/
Configuring the MFE primer binary
MFEprimer is used for dimer calculations. Multiplex wormhole is set up to automatically download and configure the binary file using the helpers/setup_mfeprimer.py script, take the following steps: Download the MFEprimer v3.2.7 version that fits your operating system here. Save the file to your multiplex_wormhole package directory (location can be found by running pip show multiplex_wormhole). Unzip the download (if zipped). Ensure the file can be executed by opening terminal or the command line in this directory and running chmod +x mfeprimer*.
Now you are ready to run multiplex wormhole!
Full Workflow Example
See multiplex_primer_design to run the full pipeline step by step using the example templates.
Comments/Questions/Ideas
Please report any problems, questions, or potential enhancements in the GitHub Issues page.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file multiplex_wormhole-1.0.2.tar.gz.
File metadata
- Download URL: multiplex_wormhole-1.0.2.tar.gz
- Upload date:
- Size: 61.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
522e44f828b58e484da8e502d860c0d41e00b4ac524afef08b7909a3409d88af
|
|
| MD5 |
7769e5d59c8988d15aa5d546d7fa3b3e
|
|
| BLAKE2b-256 |
12489097f47dd45e92843c8377056603c7234dc9dde50a078f695966742d7c89
|
Provenance
The following attestation bundles were made for multiplex_wormhole-1.0.2.tar.gz:
Publisher:
release.yml on mhallerud/multiplex_wormhole
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
multiplex_wormhole-1.0.2.tar.gz -
Subject digest:
522e44f828b58e484da8e502d860c0d41e00b4ac524afef08b7909a3409d88af - Sigstore transparency entry: 1970914738
- Sigstore integration time:
-
Permalink:
mhallerud/multiplex_wormhole@e8a865783b0c078422fc8db44944faf136264487 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/mhallerud
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@e8a865783b0c078422fc8db44944faf136264487 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file multiplex_wormhole-1.0.2-py3-none-any.whl.
File metadata
- Download URL: multiplex_wormhole-1.0.2-py3-none-any.whl
- Upload date:
- Size: 69.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ee5f659bdc98860c5d36f432d6d0dcda5c2536841f6e1bd80d7350db275c5e4
|
|
| MD5 |
65e67c4d3a0bdcffd4fa8fb70c22dad5
|
|
| BLAKE2b-256 |
1d6805dea88e64e8c7b87a3154cd6e2908c888a0b588edabf0effc84e8af4df4
|
Provenance
The following attestation bundles were made for multiplex_wormhole-1.0.2-py3-none-any.whl:
Publisher:
release.yml on mhallerud/multiplex_wormhole
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
multiplex_wormhole-1.0.2-py3-none-any.whl -
Subject digest:
3ee5f659bdc98860c5d36f432d6d0dcda5c2536841f6e1bd80d7350db275c5e4 - Sigstore transparency entry: 1970914896
- Sigstore integration time:
-
Permalink:
mhallerud/multiplex_wormhole@e8a865783b0c078422fc8db44944faf136264487 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/mhallerud
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@e8a865783b0c078422fc8db44944faf136264487 -
Trigger Event:
workflow_dispatch
-
Statement type: