Skip to main content

JANUS : Joint ANalysis for augmentation of clUSter specificity

Project description

JANUS / janusbio

JANUS is a matrix-based analysis toolkit for joint comparison of reference and target datasets. It provides three main analysis categories:

  • contributions: reference and target contribution matrices
  • differential: differential correlation and direction matrices
  • covariation: sample-size-normalized covariation matrices

Installation

Install from PyPI

pip install janusbio

Install from Git

pip install "git+https://github.com/<YOUR_ORG_OR_USER>/<YOUR_REPO>.git"

Development install (editable)

pip install -e .[dev]

CLI Usage

The CLI accepts explicit large/reference and small/target datasets:

janusbio --large large.csv --small small.csv

Run mode

  • --run all (default): compute all three categories
  • --run contributions: compute only contributions
  • --run differential: compute only differential correlation
  • --run covariation: compute only covariation

Examples:

janusbio --large large.csv --small small.csv --run all
janusbio --large large.csv --small small.csv --run contributions

Save outputs

Use --save with one or more categories to save computed outputs as parquet files:

janusbio --large large.csv --small small.csv --run all --save contributions differential
janusbio --large large.csv --small small.csv --run covariation --save covariation --output output

If --save is omitted, JANUS computes results and prints a summary without writing files.

Validation rule: categories passed to --save must be part of what --run computes.

Output files

  • contributions:
    • ref_contributions.parquet
    • target_contributions.parquet
  • differential:
    • diff_corr.parquet
    • direction.parquet
  • covariation:
    • ref_covariation.parquet
    • target_covariation.parquet

Python API

from janusbio import analysis, preprocessing, utils

utils.initialize({"preprocessing": {"drop_na": False}})

inputs = {
		"Large (REFERENCE)": {"path": "large.csv", "sort": "high"},
		"Small (TARGET)": {"path": "small.csv", "sort": "high"},
}

preprocessing.load_datasets(inputs)
merged, n_ref = preprocessing.merge_datasets()

ref_contr, target_contr = analysis.get_contributions(merged, n_ref)
diff_corr, direction = analysis.get_differential_correlation(merged, n_ref)
ref_cov, target_cov = analysis.get_covariation_contributions(merged, n_ref)

Tests

pytest

Build and Publish

Build distributions

uv build

Publish to TestPyPI

set TWINE_USERNAME=__token__
set TWINE_PASSWORD=<TEST_PYPI_TOKEN>
uv publish --index testpypi

Publish to PyPI

set TWINE_USERNAME=__token__
set TWINE_PASSWORD=<PYPI_TOKEN>
uv publish

After publish, verify install:

pip install janusbio
janusbio --help

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

janusbio-0.2.0.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

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

janusbio-0.2.0-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

Details for the file janusbio-0.2.0.tar.gz.

File metadata

  • Download URL: janusbio-0.2.0.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.5

File hashes

Hashes for janusbio-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2d8ff37a4e5823893c1e7c9125c73ec4948b8a3e49ddd6266b883cd7e1f2b370
MD5 41386b00ca32fb0c6ff8cb6127462b42
BLAKE2b-256 1df138094f193c3a831ef836078d0a139bbdaca86a66e029a3c2eb7508823681

See more details on using hashes here.

File details

Details for the file janusbio-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: janusbio-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 11.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.5

File hashes

Hashes for janusbio-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cd05b61f9efde70e0b8a20d9e5a21691d9bbab7cfa6708ac5b630f98bd7194cb
MD5 8f1815afce4972a8e04cb4622fbe35d3
BLAKE2b-256 aa4974a2ea9a37525d83c3a20878de947559e7e259201a5098bfe20116e608b4

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