Skip to main content

A tool for genome-wide prediction of double-stranded RNA structures

Project description

dsRNAscan

CI Tests Python Platforms License: GPL v3

dsRNAscan is a bioinformatics tool for genome-wide identification of double-stranded RNA (dsRNA) structures. It uses a sliding window approach to detect inverted repeats that can form dsRNA secondary structures, with support for G-U wobble base pairing and ML-based scoring.

Browse human genome results at dsrna.chpc.utah.edu

Install

pip install dsrnascan

Platforms: Linux (Python 3.8+), macOS (Python 3.9+). Windows not supported (use WSL).

Dependencies (auto-installed): biopython, numpy, pandas, ViennaRNA

If ViennaRNA fails via pip, install with conda: conda install -c bioconda viennarna

Usage

# Basic scan (defaults: -w 10000 -s 500 --score 75 -c 4)
dsrnascan input.fasta

# Specific chromosome with 8 CPUs
dsrnascan genome.fasta --only_seq chr21 -c 8

# Scan a specific region
dsrnascan genome.fasta --only_seq chr21 --start 33455482 --end 33655482

# Faster scan with larger step size (less overlap between windows)
dsrnascan genome.fasta -s 5000 -c 16

# Sensitive scan for shorter dsRNAs
dsrnascan sequence.fasta -w 5000 --min_bp 15 --paired_cutoff 60

Parameters

Parameter Default Description
-w 10000 Window size (bp)
-s/--step 500 Step size between windows
-c/--cpus 4 Number of CPUs
--min_bp 25 Minimum base pairs required
--score 75 Minimum einverted score
--paired_cutoff 70 Minimum % paired bases
--only_seq None Specific chromosome(s) to scan
--start/--end Full seq Region coordinates
--forward-only False Forward strand only
--reverse-only False Reverse strand only
--no-ml False Disable ML scoring
--format bedpe Output format: bedpe, gff3, or both
--output-dir Auto Output directory

| --min_len | 30 | Minimum arm length of inverted repeat | | --max_len | window size | Maximum arm length of inverted repeat |

Run dsrnascan --help for advanced options (scoring parameters, folding temperature, etc.).

Output

Results are written to the output directory:

*_merged_results.txt - Tab-delimited predictions with columns:

  • Coordinates: Chromosome, Strand, i_start, i_end, j_start, j_end
  • einverted: Score, RawMatch, PercMatch, Gaps
  • RNAduplex: dG(kcal/mol), base_pairs, percent_paired, longest_helix, eff_i/j_start/end, i_seq, j_seq, structure
  • ML scores: stability_model_score, probing_model_score, likely_edited (Yes/No), likely_forms (Yes/No)

*.bp - IGV arc visualization file

*.bedpe - BEDPE format with paired coordinates (one line per dsRNA) - default output

*.gff3 - GFF3 with mRNA/exon types for IGV arc visualization (--format gff3 or --format both)

Browse Results

# Interactive viewer with Forna RNA structure visualization
dsrna-browse results_directory/

# With RNA editing site annotations (BED or GFF3)
dsrna-browse results_directory/ --editing-file editing_sites.bed

Citation

If you use dsRNAscan, please cite:

Comprehensive mapping of human dsRNAome reveals conservation, neuronal enrichment, and intermolecular interactions https://doi.org/10.1101/2025.01.24.634786

Additional Tools

overlap_analyzer - Statistical enrichment analysis for genomic features overlapping dsRNA predictions. See overlap_analyzer/README.md. Not included in PyPI package; clone the repo to access.

License

GNU General Public License v3.0 - see LICENSE.

Issues: GitHub Issues

Acknowledgments

  • EMBOSS team for the einverted algorithm
  • ViennaRNA team for RNA folding algorithms

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

dsrnascan-0.5.1.tar.gz (2.2 MB view details)

Uploaded Source

Built Distribution

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

dsrnascan-0.5.1-py3-none-any.whl (2.2 MB view details)

Uploaded Python 3

File details

Details for the file dsrnascan-0.5.1.tar.gz.

File metadata

  • Download URL: dsrnascan-0.5.1.tar.gz
  • Upload date:
  • Size: 2.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for dsrnascan-0.5.1.tar.gz
Algorithm Hash digest
SHA256 dc51f66804f5226867197cc68469f3b9892da7fec3f4be92134432ef953a8370
MD5 90ecc89a190914092d24ee0eb8e5b522
BLAKE2b-256 9cf6591c2662cf21e2defbf4e5d2910b6908cc5b2924c10582a4d3f132ba0856

See more details on using hashes here.

File details

Details for the file dsrnascan-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: dsrnascan-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for dsrnascan-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 513617a70b6cba1d9253fb02d667ad9a300e10ec6ede1c3b7098433e435375c8
MD5 45f44a371201cdf96c3d9c75207489b9
BLAKE2b-256 a3f91b8582975f6c0dd5420521dc56e38c7a3e0cbff5087fcddc153bc2accb8f

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