Skip to main content

SniffCell Lite annotates variants using targeted long-read methylation evidence and ctDMR signals.

Project description

SniffCell Lite

SniffCell Lite keeps only two commands:

  • sniffcell-lite find: call ctDMR catalogs from a methylation atlas.
  • sniffcell-lite anno: annotate variants from supporting reads, a BAM, a reference FASTA, and a ctDMR catalog.

This branch intentionally keeps only the lite find and anno workflow.

Install

pip install .

Find

find keeps the original atlas-driven flavor. The bundled tissue atlas supports tissue code or tissue name lookup through -ck.

sniffcell-lite find \
  -n atlas/all_celltypes_blocks.npy \
  -i atlas/all_celltypes_blocks.index.gz \
  -m atlas/all_celltypes.txt \
  -ck "Colon, Ascending" \
  -o colon_ascending.ctdmr.tsv

Equivalent code form:

sniffcell-lite find -ck 3E -o colon_ascending.ctdmr.tsv

The default cell-type JSON is the packaged sniffcell/data/tissue_atlas.json. You can still pass a custom atlas with -cf.

Anno

Single-variant mode requires a BAM and reference FASTA. SniffCell Lite maps the variant-supporting reads in the BAM, selects ctDMRs from the catalog that overlap those supporting-read alignment spans, computes methylation from the BAM only for those reads at those ctDMRs, and assigns the variant from the targeted read-level methylation calls. ctDMR evidence is not capped to a fixed distance from the variant.

sniffcell-lite anno \
  -i sample.bam \
  -r ref.fa \
  --variant-name variant_001 \
  --variant-location chr1:100000-101000 \
  --supporting-reads readA,readB,readC \
  --catalog colon_ascending.ctdmr.tsv \
  -o anno_out

Batch mode uses a TSV or CSV with these columns:

variant_name    variant_location    supporting_reads    catalog    bam    reference

Run:

sniffcell-lite anno --batch variants.tsv -o anno_out

supporting_reads accepts comma, pipe, semicolon, whitespace-delimited text, JSON list text, or @path/to/read_names.txt.

If every batch row uses the same reference, pass it once instead of adding a reference column:

sniffcell-lite anno --batch variants.tsv -r ref.fa -o anno_out

Outputs

sniffcell-lite find writes:

  • *.tsv: ctDMR catalog
  • *.tsv.igv.bed: IGV BED companion
  • *.tsv.catalog.json: catalog manifest when tissue metadata was used

sniffcell-lite anno writes:

  • variant_assignment.tsv
  • variant_assignment_readable.tsv
  • variant_assignment_readable_long.tsv
  • reads_classification.tsv
  • support_read_mappings.tsv
  • anno_compact_manifest.json or anno_batch_manifest.json

Tests

pytest -q

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

sniffcell_lite-0.9.6.tar.gz (35.5 kB view details)

Uploaded Source

Built Distribution

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

sniffcell_lite-0.9.6-py3-none-any.whl (36.1 kB view details)

Uploaded Python 3

File details

Details for the file sniffcell_lite-0.9.6.tar.gz.

File metadata

  • Download URL: sniffcell_lite-0.9.6.tar.gz
  • Upload date:
  • Size: 35.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for sniffcell_lite-0.9.6.tar.gz
Algorithm Hash digest
SHA256 ace3dff0c4dce638166896b6dc14885ed04bba9276d6aa8d013924b5f5e05598
MD5 3540c544a201ed54b5f5fac57851bdee
BLAKE2b-256 d4666ca84d7cdefb7e789e2ef6e0291dab8f37d4fd466617dd29f4f9bcd643b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for sniffcell_lite-0.9.6.tar.gz:

Publisher: python-publish.yml on Fu-Yilei/SniffCell

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sniffcell_lite-0.9.6-py3-none-any.whl.

File metadata

  • Download URL: sniffcell_lite-0.9.6-py3-none-any.whl
  • Upload date:
  • Size: 36.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for sniffcell_lite-0.9.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8c8eb74de98888aa48c4203c5454edff2a524f3683687c12446886def726ee95
MD5 fe0c5bb464b5e797455d458ecb76ea67
BLAKE2b-256 4b7e39210708ec906d0dcdf6c45937c4b81e3fdb983bab36d52e8198a95d6aa2

See more details on using hashes here.

Provenance

The following attestation bundles were made for sniffcell_lite-0.9.6-py3-none-any.whl:

Publisher: python-publish.yml on Fu-Yilei/SniffCell

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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