使用Jupyter Notebook的R Notebook中出现了核心错误

7

我想在Jupyter笔记本中使用R语言。

我打开了R shell并运行了以下命令:

install.packages(c('rzmq','repr','IRkernel','IRdisplay'),
             repos = c('http://irkernel.github.io/', getOption('repos')))
IRkernel::installspec()

然后我打开了我的ipython笔记本,并使用现在可用的R扩展创建了一个新的笔记本。然而,当我访问笔记本时,遇到了这个内核错误:

Traceback (most recent call last):
  File "C:\Users\Nina Kate\Anaconda3\lib\site-packages\IPython\html\base\handlers.py", line 394, in wrapper
    result = yield gen.maybe_future(method(self, *args, **kwargs))
  File "C:\Users\Nina Kate\Anaconda3\lib\site-packages\IPython\html\services\sessions\handlers.py", line 53, in     post
    model = sm.create_session(path=path, kernel_name=kernel_name)
  File "C:\Users\Nina Kate\Anaconda3\lib\site-packages\IPython\html\services\sessions\sessionmanager.py", line 66, in create_session
    kernel_name=kernel_name)
  File "C:\Users\Nina Kate\Anaconda3\lib\site-packages\IPython\html\services\kernels\kernelmanager.py", line 84, in start_kernel
    kernel_name=kernel_name, **kwargs)
  File "C:\Users\Nina Kate\Anaconda3\lib\site-packages\IPython\kernel\multikernelmanager.py", line 112, in start_kernel
km.start_kernel(**kwargs)
  File "C:\Users\Nina Kate\Anaconda3\lib\site-packages\IPython\kernel\manager.py", line 240, in start_kernel
**kw)
  File "C:\Users\Nina Kate\Anaconda3\lib\site-packages\IPython\kernel\manager.py", line 189, in _launch_kernel
return launch_kernel(kernel_cmd, **kw)
  File "C:\Users\Nina Kate\Anaconda3\lib\site-packages\IPython\kernel\launcher.py", line 202, in launch_kernel
proc = Popen(cmd, **kwargs)
  File "C:\Users\Nina Kate\Anaconda3\lib\subprocess.py", line 859, in __init__
restore_signals, start_new_session)
  File "C:\Users\Nina Kate\Anaconda3\lib\subprocess.py", line 1112, in _execute_child
startupinfo)
    FileNotFoundError: [WinError 2] The system cannot find the file specified

1
如果您打开命令提示符并运行 R,它是否会启动 R?如果没有,您需要将包含 R.exe 的目录添加到系统路径中。请参阅此处的更改说明:http://www.computerhope.com/issues/ch000549.htm - Thomas K
我这里也有同样的问题。在Mac OS上,我能够从终端启动r。 - janicebaratheon
在Windows 7中也是一样。可以在shell中启动R,但在jupyter中会出现内核错误。 - joaquin
3个回答

5

我在Windows 7上遇到了完全相同的错误。 我将R添加到PATH环境变量中,可以在shell中运行它,但在Jupyter中仍然出现内核错误。

只有当系统范围内安装,内核才能开始工作:

IRkernel::installspec(user = FALSE)

取代第一个安装选项:

IRkernel::installspec()

请注意,必须设置两个参数:PATH变量和R系统范围内的安装。

1

您可能错过了关于irkernel存储库中缺少索引的警告:

Warning: unable to access index for repository http://irkernel.github.io/src/contrib:
   cannot download all files

这些新安装步骤对我有用(在R 3.3控制台中):

install.packages('devtools')
devtools::install_github('IRkernel/IRkernel') # IRkernel-master.tar.gz
IRkernel::installspec()  # register kernel in the current R install
IRkernel::installspec(name = 'ir33', displayname = 'R 3.3')  # ir32, R 3.2

当您重新启动jupyter notebook时,"R 3.3"条目应出现在内核列表中。

1
我其实很震惊这个方法奏效了!!我已经花了几个小时来解决这个问题。谢谢! - Reabo

0

如果您使用的是Windows 10而且没有使用Anaconda,则可以尝试以下方法:

使用记事本查看您现有的内核文件。该文件位于:

~ AppData\Roaming\Jupyter\kernels

此文件将显示安装Jupyter时使用的R版本。如果您更改或升级了当前正在使用的R版本,则R内核将无法在Jupyter中工作。

R Studio -> 工具 -> 全局选项 -> 更改,以查看计算机上安装的R版本。如果当前的R版本与内核文件中的版本不同,请选择其他版本的R。关闭R Studio并重新打开以验证所使用的版本。关闭R Studio并打开Jupyter Notebook并选择R内核。现在应该可以使用R内核了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接