aertslab / SCENIC

SCENIC is an R package to infer Gene Regulatory Networks and cell types from single-cell RNA-seq data.
http://scenic.aertslab.org
GNU General Public License v3.0
395 stars 94 forks source link

tuple is not allowed for map key #169

Closed yiyelinfeng closed 3 years ago

yiyelinfeng commented 3 years ago

Hi, when I run this command with

pyscenic grn --num_workers 1 --output adj.tsv --method grnboost2 PBMC10k_filtered.loom hs_hgnc_tfs.txt

as Nat Protocol described, but I got this error: ValueError: tuple is not allowed for map key

and there are load logs:

/share/home/zhanglin/softwares/miniconda3/envs/scenic_protocol/lib/python3.6/site-packages/dask/config.py:161: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details. data = yaml.load(f.read()) or {}

2020-11-30 15:27:03,937 - pyscenic.cli.pyscenic - INFO - Loading expression matrix.

2020-11-30 15:27:06,089 - pyscenic.cli.pyscenic - INFO - Inferring regulatory networks. ~/softwares/miniconda3/envs/scenic_protocol/lib/python3.6/site-packages/dask/config.py:161: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details. data = yaml.load(f.read()) or {} preparing dask client parsing input ~/softwares/miniconda3/envs/scenic_protocol/lib/python3.6/site-packages/arboreto/algo.py:214: FutureWarning: Method .as_matrix will be removed in a future version. Use .values instead. expression_matrix = expression_data.as_matrix() creating dask graph distributed.protocol.core - CRITICAL - Failed to deserialize Traceback (most recent call last): File "~/softwares/miniconda3/envs/scenic_protocol/lib/python3.6/site-packages/distributed/protocol/core.py", line 108, in loads header = msgpack.loads(header, use_list=False, **msgpack_opts) File "msgpack/_unpacker.pyx", line 195, in msgpack._cmsgpack.unpackb ValueError: tuple is not allowed for map key distributed.core - ERROR - tuple is not allowed for map key

how to fix it and wish you reply!

cflerin commented 3 years ago

Hi @yiyelinfeng ,

This is an issue for pySCENIC. Please see aertslab/pySCENIC/issues/163 for suggestion on how to resolve this. My main recommendation would be to use the arboreto_with_multiprocessing.py script.