icbi-lab / infercnvpy

Infer copy number variation (CNV) from scRNA-seq data. Plays nicely with Scanpy.

Home Page:https://infercnvpy.readthedocs.io/en/latest/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

summary bug

abyssum opened this issue · comments

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-194-09942ce7d463> in <module>
----> 1 cnv.pl.chromosome_heatmap_summary(adata_copykat[adata_copykat.obs["cnv_leiden"].isin(["10", "8", "6"]), :], groupby = "cnv_leiden")

~/.local/lib/python3.8/site-packages/infercnvpy/pl/_chromosome_heatmap.py in chromosome_heatmap_summary(adata, groupby, use_rep, cmap, figsize, show, save, **kwargs)
    145     tmp_obs = pd.DataFrame()
    146     tmp_obs[groupby] = np.hstack([np.repeat(x, 10) for x in groups])
--> 147     tmp_adata = sc.AnnData(
    148         X=np.vstack(
    149             [

~/.local/lib/python3.8/site-packages/anndata/_core/anndata.py in __init__(self, X, obs, var, uns, obsm, varm, layers, raw, dtype, shape, filename, filemode, asview, obsp, varp, oidx, vidx)
    305             self._init_as_view(X, oidx, vidx)
    306         else:
--> 307             self._init_as_actual(
    308                 X=X,
    309                 obs=obs,

~/.local/lib/python3.8/site-packages/anndata/_core/anndata.py in _init_as_actual(self, X, obs, var, uns, obsm, varm, varp, obsp, raw, layers, dtype, shape, filename, filemode)
    516         _move_adj_mtx({"uns": self._uns, "obsp": self._obsp})
    517 
--> 518         self._check_dimensions()
    519         self._check_uniqueness()
    520 

~/.local/lib/python3.8/site-packages/anndata/_core/anndata.py in _check_dimensions(self, key)
   1767             key = {key}
   1768         if "obs" in key and len(self._obs) != self._n_obs:
-> 1769             raise ValueError(
   1770                 "Observations annot. `obs` must have number of rows of `X`"
   1771                 f" ({self._n_obs}), but has {self._obs.shape[0]} rows."

ValueError: Observations annot. `obs` must have number of rows of `X` (3), but has 30 rows.

I suspect it's due to the matrix being dense.
This should totally be supported, I'll create a fix after the holiday

@abyssum, this should now work in infercnvpy==0.1.2