Skip to main content

A portable and modular meta-predictor for identifying Long Non-coding RNAs (lncRNAs).

Project description

metaLncRNA v1.2.0 ๐Ÿงฌ๐Ÿค–

metaLncRNA Logo

DOI University: UMC Laboratory: LaBiOmicS Bioinformatics

PyPI Version Open Source Open Science Open Data License: MIT JOSS Status CI Status

Python Version Powered by Ollama Ensemble Learning


metaLncRNA is a modular, high-performance Python framework designed to identify Long Non-coding RNAs (lncRNAs) by orchestrating an ensemble of seven diverse computational tools. It resolves the "reproducibility gap" by automating environment management and providing a robust consensus prediction through weighted soft-voting.


metaLncRNA Infographic


๐Ÿ“‚ Repository Structure

.
โ”œโ”€โ”€ conda/                   # Bioconda recipe and metadata
โ”œโ”€โ”€ deploy/                  # Containerization (Dockerfile, Singularity.def)
โ”œโ”€โ”€ docs/                    # Technical documentation and user guides
โ”œโ”€โ”€ examples/                # Quick-start samples (FASTA, config templates)
โ”œโ”€โ”€ galaxy/                  # Galaxy Tool wrapper and test data
โ”œโ”€โ”€ INPI_Registration/       # Legal software registration assets
โ”œโ”€โ”€ paper/                   # JOSS publication manuscript and bibliography
โ”œโ”€โ”€ scripts/                 # Bash scripts for HPC/Batch processing
โ”œโ”€โ”€ src/
โ”‚   โ””โ”€โ”€ metalncrna/          # Main Python Package
โ”‚       โ”œโ”€โ”€ cli.py           # Command-line interface entry point
โ”‚       โ”œโ”€โ”€ adapters/        # Wrappers for 7 lncRNA predictors
โ”‚       โ”œโ”€โ”€ engine/          # Core logic (Consensus, Dispatcher, Trainer)
โ”‚       โ”œโ”€โ”€ utils/           # AI Agent, Env management, Reports, FASTA handling
โ”‚       โ”œโ”€โ”€ data/            # Built-in weights and default configurations
โ”‚       โ””โ”€โ”€ third_party/     # Bundled legacy tools (CNCI, CPPred, LGC)
โ”œโ”€โ”€ tests/                   # Comprehensive Unit and Integration tests
โ”œโ”€โ”€ pyproject.toml           # Build system and dependency definitions
โ””โ”€โ”€ pixi.toml                # Environment management configuration

๐Ÿงฉ Core Components Detail

  • src/metalncrna/adapters/: Orchestrates external tools like RNAsamba, CPAT, CPC2, etc., providing a unified interface for prediction.
  • src/metalncrna/engine/:
    • consensus.py: Implements the weighted soft-voting algorithm.
    • dispatcher.py: Manages parallel execution of the ensemble.
  • src/metalncrna/utils/agent.py: Integrates with local LLMs (Ollama) for automated biological interpretation of results.
  • galaxy/: Allows metaLncRNA to be integrated into Galaxy instances, supporting reproducible web-based workflows.

๐Ÿ”ง Recent Fixes (v1.2.0)

  • Consensus Logic: Updated consensus_support to reflect the number of tools that agree with the final consensus label, providing better interpretability.
  • CPC2 Integration: Fixed a critical parsing error where coding probability and label columns were mismatched (v1.1.8).
  • Cleanup: Removed unimplemented/experimental adapters to ensure stability.

โš™๏ธ Configuration

metaLncRNA follows a robust configuration loading order:

  1. Internal Defaults: Built-in weights and paths in src/metalncrna/data/default_config.yaml.
  2. Local Config: metaLncRNA_config.yaml in your current working directory.
  3. User Home: ~/.metalncrna/config.yaml.
  4. Explicit Path: Provided via the -c or --config flag.

๐Ÿš€ Key Features

  • Ensemble Prediction: Combines 7 tools (RNAsamba, CPAT, CPC2, PLEK, CNCI, CPPred, LGC).
  • Interactive AI Agent: Integrated local LLM assistant (Llama-3.2 or OpenBioLLM) to interpret results and explain classification decisions.
  • Reproducibility First: Built-in environment isolation via Mamba and Pixi.
  • Standardized Reports: Comprehensive TSV reports with tool congruence metrics.
  • Publication Ready: Formatted according to JOSS standards for scientific software.

๐Ÿ“– Documentation

For detailed instructions, please refer to our Documentation Hub:

  • ๐Ÿ› ๏ธ User Guide: Installation, common commands, and AI Chat usage.
  • ๐Ÿ—๏ธ Technical Architecture: Ensemble methodology and AI-driven interpretation layer.
  • ๐Ÿ”ง Troubleshooting: Common issues and hardware requirements.

๐Ÿ› ๏ธ Quick Start

1. Installation

Option A: via pip (Fastest)

We recommend using a virtual environment:

python3 -m venv venv
source venv/bin/activate
pip install "metalncrna[agent]"
metalncrna setup

Option B: via Conda / Mamba

Perfect for bioinformaticians using Bioconda:

# Create environment from the provided file
mamba env create -f environment.yml
conda activate metalncrna

# Finalize setup
metalncrna setup

2. Run Integrated Pipeline

metalncrna predict -i transcripts.fasta -o ./results -p MyAnalysis

3. Ask the AI Agent

# Get a summary of your findings
metalncrna ask "Summarize the analysis results" -r ./results/MyAnalysis/metalncrna_results.tsv

๐Ÿณ Deployment

Pre-configured definitions are available for Docker and Singularity/Apptainer in the deploy/ directory.

๐Ÿค Contributing

Contributions are welcome! Please see our CONTRIBUTING.md for details.

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


Developed by LaBiOmicS - Laboratory of Bioinformatics and Omics Sciences. Institution: Universidade de Mogi das Cruzes (UMC)

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

metalncrna-1.2.0.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

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

metalncrna-1.2.0-py3-none-any.whl (1.9 MB view details)

Uploaded Python 3

File details

Details for the file metalncrna-1.2.0.tar.gz.

File metadata

  • Download URL: metalncrna-1.2.0.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for metalncrna-1.2.0.tar.gz
Algorithm Hash digest
SHA256 bb84d3171de12c27c16a3027802236b3578cbec18a53e55114461b0287e60537
MD5 deb4ea17167081bda8b1ff3f1e717174
BLAKE2b-256 f3351bb3e4fef1d96a76bb38c1a7d6e8ed80c21da8f5e69f20c2e5b5da559315

See more details on using hashes here.

File details

Details for the file metalncrna-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: metalncrna-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for metalncrna-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c859a8f07b095a614171576924fa4a3826becaa83af1efd1332fc4a19b5440bd
MD5 f643836756b87e7125a03dfc7ed6b621
BLAKE2b-256 df9ab1e7b920b9683f27b3b1e003c04953ecd854d630549de633a53e44bb567e

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