无法从 Jupyter 笔记本中的 conda 环境导入 rpy2.robjects,而是在控制台中导入



导入 rpy2.robjects 在 jupyter 笔记本中失败,LookupError: 'show' not found,但是,导入在具有激活环境的命令行 Python 解释器中工作。如何使其在笔记本中工作?

我已经创建了安装了 rpy2 和 ipykernel 的 conda 环境,并通过python -m ipykernel install --user --name env --display-name "env"(在激活的环境中(将其链接到 jupyter。我在jupyter kernelspec list提供的路径下查找了 kernel.json 中的环境路径,发现它是我的环境的正确路径。当我从激活的环境中启动 jupyter 笔记本并尝试导入 rpy2.rojects 时,我没有收到错误。我本以为这应该没有任何区别。此外,当通过~home/user/anaconda3/envs/env内的./python启动python解释器时,我确实得到了错误。在有或没有激活环境的情况下启动笔记本时,似乎某些环境变量的设置方式不同,但我不知道哪个以及如何设置。我会很高兴得到任何了解问题的提示。

是否激活环境确实有所不同。您已经指出了一个解决方案,在激活的环境中启动 Jupyter,内核将继承相应的环境变量。

Anaconda 还有一个内核提供程序,可以在所有 conda 环境中查找内核,并在内核启动时自动激活环境。

另一种方法是编写自己的内核规范来调用脚本。在该脚本中,您可以在启动内核之前激活 conda 环境。

最新更新