我正在尝试使用nipype运行预处理管道,并收到以下错误消息:
Traceback (most recent call last):
File "preprocscript.py", line 211, in <module>
preproc.run('MultiProc', plugin_args={'n_procs': 8})
File "/sw/anaconda/3/lib/python3.6/site-packages/nipype/pipeline/engine/workflows.py", line 579, in run
runner = plugin_mod(plugin_args=plugin_args)
File "/sw/anaconda/3/lib/python3.6/site-packages/nipype/pipeline/plugins/multiproc.py", line 162, in __init__
initargs=(self._cwd,)
File "/sw/anaconda/3/lib/python3.6/multiprocessing/pool.py", line 175, in __init__
self._repopulate_pool()
File "/sw/anaconda/3/lib/python3.6/multiprocessing/pool.py", line 236, in _repopulate_pool
self._wrap_exception)
File "/sw/anaconda/3/lib/python3.6/multiprocessing/pool.py", line 250, in _repopulate_pool_static
wrap_exception)
File "/sw/anaconda/3/lib/python3.6/multiprocessing/process.py", line 73, in __init__
assert group is None, 'group argument must be None for now'
AssertionError: group argument must be None for now我不确定我的代码中到底是什么错误导致了这一点,或者这是否是我的软件的问题。我使用的是linux系统,使用的是python 3.6。
发布于 2019-04-29 05:13:52
您正在使用的模块中使用了ProcessPoolExecuter。在Python3.7中,他们向该类添加了一些额外的参数,即initargs,这是您正在使用的nipype多进程模块中调用的参数。不幸的是,它不能向后兼容3.6,并且他们没有以另一种方式编写来使用该模块。
您的选择是升级或不使用nipype的多处理部分。
https://stackoverflow.com/questions/55886115
复制相似问题