Skip to main content

juzi

Project description

:tangerine: juzi

Various methods for analyzing cell states and types in single-cell sequencing data (experimental).

Installation

pip install juzi

cell states (cs)

Identifying intra-sample programs.

from juzi.cs.nmf import multisample_nmf

# Perform NMF independently across multiple samples
Hs = multisample_nmf(
    [C1, C2, C3, ...],
    k=[5, 6, 7, 8, 9],
    center=False,
    scale=False,
    target_sum=1e5,
    max_exp=10.0,
    max_iter=500,
    alpha=0.,
    tol=0.0001,
    loss="frobenius",
    n_jobs=8,
    prefer="threads",
    seed=123
) 

Identifying consensus (intra-sample) and shared (inter-sample) programs.

from juzi.cs.nmf import factor_consensus, factor_similarity

# Compute a set of clustered consensus factors between NMF runs
HC, HS, labels, correlation = factor_consensus(
    np.array_split(Hs[0], [5, 6, 7, 8, 9]),
    n_clusters=8,
    eps=1e-8,
    method="agglomerative",
    metric="euclidean",
    linkage="ward",
)

# Compute similarity matrix between factors computed across different samples
S, K, ids = factor_similarity(
    Hs,
    distance="cosine",
    top_k=500,
    drop_zeros=True,
    intra_sample=False,
    eps=1e-8
)

Scoring top gene sets identified across factors.

from juzi.cs.tools import score_gene_sets

# Score a set of genes on subsetted expression matrix
cell_scores = score_gene_set(
    X_subset,
    scale_by_sv=True
)
Clustering factors into recurrent programs.

```python
from juzi.cs.cluster import eigengap_heuristic, spectral_clustering

# Estimate an optimal number of clusters from a similarity matrix
results = eigengap_heuristic(
    S,
    min_clusters=2,
    max_clusters=10,
    normalize=True,
    eps=1e-8
)

results.plot(show=True)

# Cluster a similarity matrix given an input number of clusters
assignments = spectral_clustering(
    S,
    n_clusters=results.k,
    normalize=True,
    seed=123456,
    eps=1e-8
)

marker genes (mg)

Various marker genes for cell types, subtypes, and pathways.

from juzi.mg import available_sets

# Check available marker gene sets
print(available_sets())

# Load breast cancer gene sets (e.g. PAM50)
from juzi.mg import CancerBreast
markers = CancerBreast()

# Load cancer pathway gene sets (e.g. HIPPO)
from juzi.mg import CancerPathways
markers = CancerPathways()

# Load cell cycle gene sets (e.g. G1S)
from juzi.mg import CellCycle
markers = CellCycle()

# List available sets in a given marker class
markers.info()

# Get all genes from all sets in a flattened list
markers.all()

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

juzi-0.0.11.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

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

juzi-0.0.11-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file juzi-0.0.11.tar.gz.

File metadata

  • Download URL: juzi-0.0.11.tar.gz
  • Upload date:
  • Size: 14.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for juzi-0.0.11.tar.gz
Algorithm Hash digest
SHA256 cd2ef04c55e59d34df22793b5a113b5fae68faf582db0bbdc62d6f9548331a0d
MD5 c173b12f76e16b56686d4395fa0343e1
BLAKE2b-256 de4d93dc84a55e97cb32638237d1717052b9909fbd9961958e85e7d2de4456d9

See more details on using hashes here.

File details

Details for the file juzi-0.0.11-py3-none-any.whl.

File metadata

  • Download URL: juzi-0.0.11-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for juzi-0.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 f7b60a1b61043c25f5ec49a2cf4e546a07c9dae34a5bb00364e1eccad5327735
MD5 46b6acbc5a26df1dd27bda29218ddc5c
BLAKE2b-256 988db6042ac88d2d53bc2106880a2d9fecf5d127e6d8060b7402385a84664360

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