scverse / scverse/SnapATAC2

macs3 function not works with multiple dataset

Open
#332 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
323
Forks
43
PR merge metrics
No merged PRs in 30d

Description

data = snap.read_dataset("combined.h5ads")
data

AnnDataSet object with n_obs x n_vars = 277377 x 526765 backed at 'combined.h5ads'

obs: 'sample', 'leiden'
var: 'count', 'selected'
uns: 'spectral_eigenvalue', 'AnnDataSet', 'reference_sequences'
obsm: 'X_spectral_mnn', 'X_spectral', 'X_spectral_harmony', 'X_umap'
obsp: 'distances'

%%time
snap.tl.macs3(data, groupby='leiden', replicate='sample')

2024-09-01 21:26:50 - INFO - Exporting fragments...
thread 'thread 'thread '' panicked at src/call_peaks.rs:384' panicked at :src/call_peaks.rs73:
:called Result::unwrap() on an Err value: Custom { kind: Other, error: "Allocation error : not enough memory" }384
:' panicked at note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
73:
src/call_peaks.rscalled Result::unwrap() on an Err value: Custom { kind: Other, error: "Allocation error : not enough memory" }:
384:73:

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with snap.tl.macs3(data, groupby='leiden', replicate='sample') using the reported combined.h5ads dataset and inspect the failure at src/call_peaks.rs:384. Reproduce it with RUST_BACKTRACE enabled; done means the multiple-dataset call completes without the reported allocation error.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, rust
Domain
data
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.