我是该领域的新手,很抱歉可能出现愚蠢的错误。我正在使用snakemake,所以我按照他们的指示创建了一个conda环境:
conda install -c conda-forge mamba
mamba create -c conda-forge -c bioconda -n snakemake snakemake
然而,当我运行基本教程(在此处输入链接描述(时,出现了ModuleNotFoundError:
snakemake --cores 1
ModuleNotFoundError:没有名为"matplotlib"的模块
因此,我安装了带有conda-forge:的matplotlib
conda install -c conda-forge matplotlib
然而,当我重新运行教程时,我得到了一个ImportError:
ImportError:无法从"PIL"(/usr/lib/python3/dist-packages/PIL/init.py(导入名称"_imaging"所以我决定在同样的conda环境中安装枕头:
conda install -c conda-forge pillow
但我在运行教程时遇到了同样的错误。
所有导入的包都来自我的conda环境:
anaconda3/envs/snakemake/lib/python3.9/site-packages
除了从导入的PIL/枕头的路径
usr/lib/python3/dist包
我还更新了我的snakemake环境中的conda、anaconda和所有包。此外,我用conda列表检查了PIL的存在,它实际上存在于我的snakemake环境中,与其他包(anaconda3/envssnakemake/lib/python3.9/site包(的路径相同。
我注意到,在其他问题中,建议卸载并重新安装Pillow。然而,当我尝试卸载时:
pip uninstall Pillow
和
pip3 uninstall Pillow
我获得:
权限错误:[Erno 13]Permesso negato:'BlpImagePlugin.cpython-38.pyc'
因此,我试图强制升级:
pip install -U Pillow --user
和
pip3 install -U Pillow --user
终端显示我已成功安装Pillow 8.0.1。然而,当我导入matplotlib时,会发生同样的错误:
ImportError:无法从"PIL"(/usr/lib/python3/dist-packages/PIL/init.py(导入名称"_imaging">
我很感激您的提示谢谢
我想您错过了教程设置中的一部分(https://snakemake.readthedocs.io/en/stable/tutorial/setup.html)。在步骤2中,您下载environment.yaml并使用它来安装所有需要的软件包。或者你可以尝试自己安装所有的软件包,查看";要求";。
已解决从系统PIL包卸载:
sudo apt-get remove python-pil
我仍然不知道为什么它能工作,但至少现在我可以正确地使用matplotlib