-
Notifications
You must be signed in to change notification settings - Fork 7
Description
Hello,
I am trying to work through the multiome notebook using the dev version of simba, and am getting an error saying bedtools needs upgrading. But when I check, I have the latest pybedtools installed (v.0.10.0)
Code:
adata_CG_atac = si.tl.gene_scores(adata_CP,genome='hg38',use_gene_weigt=True, use_top_pcs=True)
Error:
NotImplementedError Traceback (most recent call last)
Cell In[28], line 1
----> 1 adata_CG_atac = si.tl.gene_scores(adata_CP,genome='hg38',use_gene_weigt=True, use_top_pcs=True)
File ~/opt/anaconda3/envs/env_simba_dev/lib/python3.12/site-packages/simba/tools/_gene_scores.py:345, in gene_scores(adata, genome, gene_anno, tss_upstream, tss_downsteam, gb_upstream, cutoff_weight, use_top_pcs, use_precomputed, use_gene_weigt, min_w, max_w)
287 """Calculate gene scores
288
289 Parameters
(...)
331 Dataframe of overlap between peaks and genes
332 """
333 GS = GeneScores(adata,
334 genome,
335 gene_anno=gene_anno,
(...)
343 min_w=min_w,
344 max_w=max_w)
--> 345 adata_CG_atac = GS.cal_gene_scores()
346 return adata_CG_atac
File ~/opt/anaconda3/envs/env_simba_dev/lib/python3.12/site-packages/simba/tools/_gene_scores.py:193, in GeneScores.cal_gene_scores(self)
190 pbt_peaks = pybedtools.BedTool.from_dataframe(df_peaks_for_pbt)
192 # peaks overlapping with extended TSS
--> 193 pbt_overlap = pbt_peaks.intersect(pbt_gene_ann_ext,
194 wa=True,
195 wb=True)
196 df_overlap = pbt_overlap.to_dataframe(
197 names=[x+'_p' for x in df_peaks_for_pbt.columns]
198 + [x+'_g' for x in df_gene_ann_for_pbt.columns])
199 # peaks overlapping with gene body
File ~/opt/anaconda3/envs/env_simba_dev/lib/python3.12/site-packages/pybedtools/bedtool.py:907, in BedTool._log_to_history..decorated(self, *args, **kwargs)
903 def decorated(self, *args, **kwargs):
904
905 # this calls the actual method in the first place; result is
906 # whatever you get back
--> 907 result = method(self, *args, **kwargs)
909 # add appropriate tags
910 parent_tag = self._tag
File ~/opt/anaconda3/envs/env_simba_dev/lib/python3.12/site-packages/pybedtools/bedtool.py:244, in _wraps..decorator..not_implemented_func(*args, **kwargs)
243 def not_implemented_func(*args, **kwargs):
--> 244 raise NotImplementedError(help_str)
NotImplementedError: "intersectBed" does not appear to be installed or on the path, so this method is disabled. Please install a more recent version of BEDTools and re-import to use this method.
Does pybedtools need downgrading maybe?
Best,
Jess