Skip to main content

A tool to assess protein coding gene annotation

Project description

PSAURON

License Pypi Release codecov

PSAURON is a machine learning model for rapid assessment of protein coding gene annotation.

M. J. Sommer, A. V. Zimin, S. L. Salzberg, PSAURON: a tool for assessing protein annotation across a broad range of species. NAR Genom. Bioinform. 7, lqae189 (2025). https://academic.oup.com/nargab/article/7/1/lqae189/7944703

Installation

$ pip install psauron

PSAURON can run on GPU or CPU and depends on PyTorch, which can be annoying :disappointed:

It may help to install PSAURON in a virtual enviromment :slightly_smiling_face:

$ python3 -m venv /path/to/new/virtual/environment
$ source /path/to/new/virtual/environment/bin/activate
$ pip install psauron

Quickstart

PSAURON takes as input a single multi-fasta file and outputs a .csv with scores for all reading frames.

By default, PSAURON uses all six frames of the nucleotide coding sequences (CDS).

$ psauron -i path_to_your_CDS.fa -o path_to_output.csv

You may also provide a multi-fasta with protein (amino acid) sequence.

$ psauron -i path_to_your_protein.faa -o path_to_output.csv -p 

...or request PSAURON score only the in-frame nucleotide sequence.

$ psauron -i path_to_your_CDS.fa -o path_to_output.csv -s

Note: internal stop codons are ignored by PSAURON. A high PSAURON score does not guarantee a sequence contains a valid ORF. This is intended behavior, as alternate frame scores are used by default to boost the power of the model.

Usage

psauron [-h] -i INPUT_FASTA [-o OUTPUT_PATH] [-m MINIMUM_LENGTH] [-e EXCLUDE] [--inframe INFRAME] [--outframe OUTFRAME] [-c] [-s] [-p] [-v]

optional arguments:
  -h, --help            show this help message and exit
  -i INPUT_FASTA, --input-fasta INPUT_FASTA
                        REQUIRED path to FASTA with spliced CDS sequence or protein sequence. A spliced CDS fasta can be created from a GTF/GFF and a reference FASTA by using gffread.
  -o OUTPUT_PATH, --output-path OUTPUT_PATH
                        OPTIONAL path to output results file, default=./psauron_score.csv
  -m MINIMUM_LENGTH, --minimum-length MINIMUM_LENGTH
                        OPTIONAL exclude all proteins shorter than m amino acids, default=5
  -e EXCLUDE, --exclude EXCLUDE
                        OPTIONAL exclude any CDS where FASTA description contains given text (case invariant), e.g. "hypothetical", default=None
  --inframe INFRAME     OPTIONAL probability threshold used to determine final psauron score, in-frame, higher number decreases sensitivity and increases specificity, default=0.5, range=[0,1]
  --outframe OUTFRAME   OPTIONAL probability threshold used to determine final psauron score, out-of-frame, higher number increases sensitivity and decreases specificity, default=0.5, range=[0,1]
  -c, --use-cpu         OPTIONAL set -c to force usage of CPU instead of GPU, default=False
  -s, --single-frame    OPTIONAL set -s to score only the in-frame CDS, which may lower accuracy of the model, default=False
  -p, --protein         OPTIONAL set -p if your FASTA contains amino acid protein sequence, which may lower accuracy of the model, default=False
  -v, --verbose         OPTIONAL set -v for verbose output with progress bars etc., default=False

 -i INPUT_FASTA, REQUIRED path to FASTA with spliced CDS sequence. This fasta can be created from a GTF/GFF and a reference FASTA by using gffread.

Example gffread commands to get CDS FASTA:

gffread -x CDS_FASTA.fa -g genome.fa input.gff
gffread -x CDS_FASTA.fa -g genome.fa input.gtf

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

psauron-1.0.5.tar.gz (751.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

psauron-1.0.5-py3-none-any.whl (748.6 kB view details)

Uploaded Python 3

File details

Details for the file psauron-1.0.5.tar.gz.

File metadata

  • Download URL: psauron-1.0.5.tar.gz
  • Upload date:
  • Size: 751.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.2

File hashes

Hashes for psauron-1.0.5.tar.gz
Algorithm Hash digest
SHA256 25e52ac8a241afa018313119c957774b3cbd463c2ed564a7cfad043991f63d10
MD5 59d0738a767048ad57b72db12843499a
BLAKE2b-256 d012ac7fd55d6d2e14132b2c4371aef8227a6c1c3ac5c03acf53efe856108c13

See more details on using hashes here.

File details

Details for the file psauron-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: psauron-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 748.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.2

File hashes

Hashes for psauron-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 bced768bf31bbf338fb57e1649ed926bbc3d4bc53a8a9d9dc356a555023a8326
MD5 cf607545d694d6a689dbd63c9f924ca8
BLAKE2b-256 a5240df0cc080d5132c6777793d0ba7520f438645b4cf051701d246d8cf863f8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page