Coder Social home page Coder Social logo

abhijeetsingh1704 / redigest Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 4.0 156 KB

REDigest: a Python GUI for In-Silico Restriction Digestion Analysis for Gene or Complete Genome Sequences

License: Other

Python 100.00%
restriction-enzyme restriction restriction-digestion genes genome multifasta complete-genomes in-silico in-silico-restriction

redigest's Introduction

REDigest (version 3.0)

REDigest: a Python GUI for In-Silico Restriction Digestion Analysis for Gene or Complete Genome Sequences

Dependencies

REDigest is written in Python3, not adapted for python2 and its dependencies.

To use REDigest, following dependencies must be installed, (for python3, version โ‰ฅ)

  1. tkinter (8.6)
  2. Biopython (>=1.78)
  3. Pandas (>=1.1.1)
  4. Matplotlib (>=3.3.1)
  5. Numpy

NOTE:

  • The GUI interface app tkinter is available by default in Python3 and do not require to be installed separately.
  • In case you get tkinter error, update or reinstall tkinter.
  • Instructions regarding tkinter installation can be found at https://tkdocs.com/tutorial/install.html

Running REDigest

With virtualenv (recommended)

In order to keep the REDigest requirements from clogging up the system dirs, it is recommended to install these in a virtual environment. This is also recommended in order to keep required packages at their proper versions.

make the virtual environment

python3 -m venv venv

activate it (Linux/Mac)

source venv/bin/activate

(or) activate it (Windows)

venv\bin\activate.bat

install required packages

update the environment

pip install -U setuptools wheel
pip install -U pip

download the repository

git clone https://github.com/abhijeetsingh1704/REDigest
cd REDigest

install dependencies

pip install -r requirements.txt

After setting up the virtual environment, it simply needs to be activated before running the software. After activating, the software is executed by running

python REDigestGUI.py

GUI tab for restriction digestion analysis

input file = fasta or genbank file

alt text

GUI tab for visualization

input file = .csv file generated by restriction digestion from tab 1

alt text

Without virtualenv

On windows

  • Add execution permission if necessary to script REDigestGUI.py

    In the order of priority

  1. Double click to open the REDigest GUI
  2. In command prompt type and execute python3 REDigestGUI.py

On Linux/MacOS

  • In terminal, add execution permission if necessary with sudo chmod +x REDigestGUI.py

    In the order of priority

  1. In terminal type and execute python3 REDigestGUI.py
  2. In file explorer, right click on file and execute Run in terminal
  3. Double click to run REDigest GUI NOTE: this option might not work on some linux distro, depending on the system permissions

Update (version 2.0)

  1. Improved cluster plot
  2. New Histogram plot
  3. Ten cluster plots for 10 parts of input data
  4. Ten histogram plots for 10 parts of input data

Citation

REDigest: a Python GUI for In-Silico Restriction Digestion Analysis of Genes or Complete Genome Sequences. Abhijeet Singh bioRxiv 2021.11.09.467873; doi: https://doi.org/10.1101/2021.11.09.467873

redigest's People

Contributors

abhijeetsingh1704 avatar jonasoh avatar michaelmeuli avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

redigest's Issues

REDigest problems with tkinter 8.6

Working on MacOS 10.14. I installed REDigest on a new virtual environment on python 3.7.3 as stated by the installation guide. Tkinter version is 8.6. When running REDigestGUI.py it crashes the user session and system reboot is needed. No error messages are shown when terminal window restores.

I corrected this error by installing python 3.10 and installing again on a new virtual environment. Tkinter version is 8.6. Now the GUI shows with no problems.

I tried running a restriction of 16S rRNA sequences from SILVA database v 138.1 non-redundant. With the following parameters:

Input file: SILVA_138.1_SSURef_NR99_tax_silva.fasta
Input file format: Fasta
Output file: ARDRA_AlwNI.fasta
Output file format: Fasta
Input Enzyme: AlwNI
Input type: Multifasta gene file
Plot title: 16SvsAlwNI

This is the output:

Exception in Tkinter callback
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/tkinter/init.py", line 1921, in call
return self.func(*args)
File "/Users/davidcajasmunoz/REDigest/REDigestGUI.py", line 1251, in run_redigest_code
redigest_code()
File "/Users/davidcajasmunoz/REDigest/REDigestGUI.py", line 906, in redigest_code
FarrayRseqFR_RE=enzyme_RE.search(Seq(FarrayRseqFR))
File "/Users/davidcajasmunoz/pvenvs/lib/python3.10/site-packages/Bio/Restriction/Restriction.py", line 2286, in search
fseq = FormattedSeq(dna, linear)
File "/Users/davidcajasmunoz/pvenvs/lib/python3.10/site-packages/Bio/Restriction/Restriction.py", line 171, in init
self.data = _check_bases(stringy)
File "/Users/davidcajasmunoz/pvenvs/lib/python3.10/site-packages/Bio/Restriction/Restriction.py", line 122, in _check_bases
raise TypeError("Invalid character found in %r" % seq_string)
TypeError: Invalid character found in 'AACCUGGUUGAUCCUGCCAGUAGUCAUAUGCUUGUCUCAAAGAUUAAGCCAUGCAUGUCUAAGUAUAAACUGCUUAUACUGUGAAACUGCGAAUGGCUCAUUAAAUCAGUUAUAGUUUAUUUGAUGGUACCUCUACACGGAUAACCGUAGUAAUUCUAGAGCUAAUACGUGCGUAAAUCCCGACUUCUGGAAGGGACGUAUUUAUUAGAUAAAAGGCCGACCGAGCUUUGCUCGACCCGCGGUGAAUCAUGAUAACUUCACGAAUCGCAUAGCCUUGUGCUGGCGAUGUUUCAUUCAAAUUUCUGCCCUAUCAACUUUCGAUGGUAGGAUAGAGGCCUACCAUGGUGGUAACGGGUGACGGAGGAUUAGGGUUCGAUUCCGGAGAGGGAGCCUGAGAAACGGCUACCACAUCCAAGGAAGGCAGCAGGCGCGCAAAUUACCCAAUCCUGAUACGGGGAGGUAGUGACAAUAAAUAACAAUGCCGGGCAUUUCAUGUCUGGCAAUUGGAAUGAGUACAAUCUAAAUCCCUUAACGAGGAUCAAUUGGAGGGCAAGUCUGGUGCCAGCAGCCGCGGUAAUUCCAGCUCCAAUAGCGUAUAUUUAAGUUGUUGCAGUUAAAAAGCUCGUAGUUGGAUUUCGGGUGGGUUCCAGCGGUCCGCCUAUGGUGAGUACUGCUGUGGCCCUCCUUUUUGUCGGGGACGGGCUCCUGGGCUUCAUUGUCCGGGACUCGGAGUCGACGAUGAUACUUUGAGUAAAUUAGAGUGUUCAAAGCAAGCCUACGCUCUGAAUACUUUAGCAUGGAAUAUCGCGAUAGGACUCUGGCCUAUCUCGUUGGUCUGUAGGACCGGAGUAAUGAUUAAGAGGGACAGUCGGGGGCAUUCGUAUUUCAUUGUCAGAGGUGAAAUUCUUGGAUUUAUGAAAGACGAACUACUGCGAAAGCAUUUGCCAAGGAUGUUUUCAUUAAUCAAGAACGAAAGUUGGGGGCUCGAAGACGAUUAGAUACCGUCGUAGUCUCAACCAUAAACGAUGCCGACUAGGGAUUGGAGGAUGUUCUUUUGAUGACUUCUCCAGCACCUUAUGAGAAAUCAAAGUUUUUGGGUUCCGGGGGGAGUAUGGUCGCAAGGCUGAAACUUAAAGGAAUUGACGGAAGGGCACCACCAGGCGUGGAGCCUGCGGCUUAAUUUGACUCAACACGGGAAAACUUACCAGGUCCAGACAUAGUGAGGAUUGACAGAUUGAGAGCUCUUUCUUGAUUCUAUGGGUGGUGGUGCAUGGCCGUUCUUAGUUGGUGGGUUGCCUUGUCAGGUUGAUUCCGGUAACGAACGAGACCUCAGCCUGCUAAAUAUGUCACAUUCGCUUUUUGCGGAUGGCCGACUUCUUAGAGGGACUAUUGGCGUUUAGUCAAUGGAAGUAUGAGGCAAUAACAGGUCUGUGAUGCCCUUAGAUGUUCUGGGCCGCACGCGCGCUACACUGACGCAUUCAGCAAGCCUAUCCUUGACCGAGAGGUCUGGGUAAUCUUUGAAACUGCGUCGUGAUGGGGAUAGAUUAUUGCAAUUAUUAGUCUUCAACGAGGAAUGCCUAGUAAGCGCAAGUCAUCAGCUUGCGUUGAUUACGUCCCUGCCCUUUGUACACACCGCCCGUCGCUCCUACCGAUUGGGUGUGCUGGUGAAGUGUUCGGAUUGGCAGAGCGGGUGGCAACACUUGCUUUUGCCGAGAAGUUCAUUAAACCCUCCCACCUAGAGGAAGGAGAAGUCGUAACAAGGUUUCCGUAGGUGAACCUGCAGAAGGAUCA'


Apparently REDigest is havin troubles with tkinter but I don't exactly now what is happening. I leave this issue hopping it could be useful.

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.