-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Made new etl and added logic for incorporting more caps in training
- Loading branch information
Showing
23 changed files
with
2,378 additions
and
220 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,78 @@ | ||
* Clone this repository | ||
* Requirements: | ||
* [Poetry](https://python-poetry.org/) | ||
* Python 3.10 - 3.12 | ||
* Create a virtual environment and install the dependencies | ||
|
||
### Creating dev enviornment | ||
```sh | ||
micromamba create -n capfinder_env python=3.12 | ||
micromamba activate capfinder_env | ||
``` | ||
|
||
### Installation | ||
|
||
=== "CPU" | ||
|
||
```sh | ||
poetry install --extras cpu | ||
``` | ||
|
||
=== "GPU (CUDA 12)" | ||
|
||
```sh | ||
poetry install --extras gpu | ||
poetry run pip install "jax[cuda12]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html | ||
``` | ||
|
||
=== "TPU" | ||
|
||
```sh | ||
poetry install --extras tpu | ||
poetry run pip install "jax[tpu]" -f https://storage.googleapis.com/jax-releases/libtpu_releases.html | ||
``` | ||
|
||
### Testing | ||
|
||
```sh | ||
pytest | ||
``` | ||
|
||
### Documentation | ||
|
||
The documentation is automatically generated from the content of the [docs directory](./docs) and from the docstrings | ||
of the public signatures of the source code. The documentation is updated and published as a [Github project page | ||
](https://pages.github.com/) automatically as part each release. | ||
|
||
### Releasing | ||
|
||
Trigger the [Draft release workflow](https://github.com/adnaniazi/capfinder/actions/workflows/draft_release.yml) | ||
(press _Run workflow_). This will update the changelog & version and create a GitHub release which is in _Draft_ state. | ||
|
||
Find the draft release from the | ||
[GitHub releases](https://github.com/adnaniazi/capfinder/releases) and publish it. When | ||
a release is published, it'll trigger [release](https://github.com/adnaniazi/capfinder/blob/master/.github/workflows/release.yml) workflow which creates PyPI | ||
release and deploys updated documentation. | ||
|
||
### Pre-commit | ||
|
||
Pre-commit hooks run all the auto-formatters (e.g. `black`, `isort`), linters (e.g. `mypy`, `flake8`), and other quality | ||
checks to make sure the changeset is in good shape before a commit/push happens. | ||
|
||
You can install the hooks with (runs for each commit): | ||
|
||
```sh | ||
pre-commit install | ||
``` | ||
|
||
Or if you want them to run only for each push: | ||
|
||
```sh | ||
pre-commit install -t pre-push | ||
``` | ||
|
||
Or if you want e.g. want to run all checks manually for all files: | ||
|
||
```sh | ||
pre-commit run --all-files | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,30 @@ | ||
--8<-- "README.md" | ||
# Capfinder - A tool for mRNA Cap Type Prediction | ||
|
||
[![PyPI](https://img.shields.io/pypi/v/capfinder?style=flat-square)](https://pypi.python.org/pypi/capfinder/) | ||
[![PyPi Downloads](https://img.shields.io/pypi/dm/capfinder)](https://pypistats.org/packages/capfinder) | ||
[![CI/CD](https://github.com/adnaniazi/capfinder/actions/workflows/release.yml/badge.svg)](https://github.com/adnaniazi/capfinder/actions/workflows/release.yml) | ||
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/capfinder?style=flat-square)](https://pypi.python.org/pypi/capfinder/) | ||
[![PyPI - License](https://img.shields.io/pypi/l/capfinder?style=flat-square)](https://pypi.python.org/pypi/capfinder/) | ||
|
||
--- | ||
|
||
Capfinder is a specialized tool designed for predicting RNA cap types in mRNAs sequenced using Oxford Nanopore Technologies (ONT) SQK-RNA004 chemistry. By analyzing native RNA sequencing data, Capfinder can determine the cap structure of individual transcripts with high accuracy. | ||
|
||
### Supported Cap Types | ||
|
||
Capfinder currently supports the prediction of the following cap types: | ||
|
||
1. Cap0 | ||
2. Cap1 | ||
3. Cap2 | ||
4. Cap2,-1 | ||
|
||
### mRNA Sample Preparation Requirements | ||
To ensure optimal performance of Capfinder, mRNA samples must be prepared according to the following specifications: | ||
|
||
- **Decapping:** The m7G moiety at the 5' end of the mRNA must be removed (decapping process). | ||
- **Oligonucleotide Extension (OTE):** A specific 52-nucleotide sequence must be ligated to the 5' end of each mRNA molecule. The OTE sequence is as follows: | ||
```sh | ||
5'-GCTTTCGTTCGTCTCCGGACTTATCGCACCACCTATCCATCATCAGTACTGT-3' | ||
``` | ||
- **Sequencing:** Samples should be sequenced using Oxford Nanopore Technologies (ONT) SQK-RNA004 chemistry. |
Oops, something went wrong.