peaks2utr: a robust, parallelized Python CLI for annotating 3' UTR
peaks2utr is a Python command-line tool that annotates 3' untranslated regions (UTR) for a given set of aligned sequencing reads in BAM format, and canonical annotation in GFF or GTF format. peaks2utr uses MACS (https://pypi.org/project/MACS3/) to call broad "peaks" of significant read coverage in the BAM file, and uses those peaks that pass a set of criteria as a basis to annotate novel 3' UTRs. This favours BAM files from the likes of 10x Chromium runs, where signal is inherently concentrated at the distal ends of the 3' or 5' UTRs. Reads containing soft-clipped bases and polyA-tails of a given length are detected, and their end bases tallied as "truncation points". When piled up, each co-occurring truncation point is used to determine the precise end base of a given UTR. peaks2utr can be tuned to extend, override or ignore any pre-existing 3' UTR annotations in the input GFF file.
Installation
Install latest release with:
pip install peaks2utr
Alternatively, to install from source:
git clone https://github.com/haessar/peaks2utr.git
cd peaks2utr
python3 -m build
python3 -m pip install dist/*.tar.gz
Dependencies
Installation instructions assume a Debian / Ubuntu system with root privileges. Follow the links for instructions for other systems.
Required
apt-get install bedtools
Optional
GenomeTools (for post-processing of output gff3)
apt-get install genometools
Verify installation
To check that peaks2utr has installed correctly, simply run the following in your terminal to initiate a short run with default parameters
peaks2utr-check
This uses a small demo set of input files contained in the repository: Tb927_01_v5.1.gff & Tb927_01_v5.1.slice.bam. When complete, you should see a file Tb927_01_v5.1.new.gff which contains original annotations as well as 3' UTRs with source "peaks2utr".
Quick start
peaks2utr is called from the command line as:
peaks2utr <GFF_IN> <BAM_IN> [options]
Inputs
GFF_IN- gene models in either GFF3 or GTF format (existing 3' UTRs optional).BAM_IN- aligned reads in BAM format.[options]- Runpeaks2utr --helpfor full set of optional arguments.
Outputs
Outputs a GFF3 annotation file (or GTF with option --gtf) including original features plus 3' UTR features with source=peaks2utr. Output file name can be specified with -o or --output; by default outputs to original filename with a *.new.<ext> suffix.
Example call
peaks2utr Tb927_01_v5.1.gff Tb927_01_v5.1.slice.bam -p 4 -o output.gff3
Metadata
Release files for peaks2utr 1.5.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| peaks2utr-1.5.2.tar.gz | 10.6 MB | Without provenance | Details for peaks2utr-1.5.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| peaks2utr-1.5.2-py3-none-any.whl | Python 3 | none | any | Details for peaks2utr-1.5.2-py3-none-any.whl |
Total release size: 21.2 MB
Release files / peaks2utr-1.5.2.tar.gz
| Download URL | peaks2utr-1.5.2.tar.gz |
|---|---|
| Size | 10.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cf73f575f0e405870435770e415b07208fde7d8f8e91fd2d04a0914bfa547b0d
|
|
BLAKE2b-256 checksum How to use checksums |
b82830ebd896f22b064a47649b2c5a5a8a8328d3c9cb080a246f8c6305a86ab1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / peaks2utr-1.5.2-py3-none-any.whl
| Download URL | peaks2utr-1.5.2-py3-none-any.whl |
|---|---|
| Size | 10.6 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d700e7bb35d7a1a6e5029ed5bbeeac925661855f1492618a5fd6fdd522761895
|
|
BLAKE2b-256 checksum How to use checksums |
251f5ce71f73126b8a3246b607ac90875877d79e746df662403fac7a796cd0c7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for peaks2utr 1.5.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.