【问题标题】:R Kernel is not working with Jupyter notebookR 内核不适用于 Jupyter 笔记本
【发布时间】:2021-10-06 11:45:29
【问题描述】:

我正在尝试解决我的 Jupyter 笔记本由于断开连接问题而无法在其 r 内核中运行 r 代码的问题。我在装有 BigSur 11.6 的 Mac 上运行 Jupyter,笔记本一直打开,直到当内核失去连接并连接到显示以下信息的内核时我尝试运行一个单元,但它永远不会重新连接:

Last login: Wed Oct  6 12:40:11 on ttys001
/opt/anaconda3/envs/entornor/bin/jupyter_mac.command ; exit;                    
(base) fersaol@MacBook-Air-de-fersaol ~ % /opt/anaconda3/envs/entornor/bin/jupyter_mac.command ; exit;
[I 13:33:25.566 NotebookApp] The port 8888 is already in use, trying another port.
[I 13:33:25.567 NotebookApp] Serving notebooks from local directory: /Users/fersaol
[I 13:33:25.567 NotebookApp] Jupyter Notebook 6.4.3 is running at:
[I 13:33:25.567 NotebookApp] http://localhost:8889/?token=9a9e27f00fcdc90028309fc5676e2548f6cbd2e6acb79550
[I 13:33:25.567 NotebookApp]  or http://127.0.0.1:8889/?token=9a9e27f00fcdc90028309fc5676e2548f6cbd2e6acb79550
[I 13:33:25.567 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 13:33:25.570 NotebookApp] 
    
    To access the notebook, open this file in a browser:
        file:///Users/fersaol/Library/Jupyter/runtime/nbserver-9257-open.html
    Or copy and paste one of these URLs:
        http://localhost:8889/?token=9a9e27f00fcdc90028309fc5676e2548f6cbd2e6acb79550
     or http://127.0.0.1:8889/?token=9a9e27f00fcdc90028309fc5676e2548f6cbd2e6acb79550
/opt/anaconda3/envs/entornor/lib/python3.8/json/encoder.py:257: UserWarning: date_default is deprecated since jupyter_client 7.0.0. Use jupyter_client.jsonutil.json_default.
  return _iterencode(o, 0)
[W 13:33:32.946 NotebookApp] Notebook INSPYR/Curso Data Analytics 2021_2022/R/kernel_R_blank.ipynb is not trusted
ERROR:asyncio:Exception in callback <TaskWakeupMethWrapper object at 0x7fc5f002d5b0>(<Future finis...late\r\n\r\n'>)
handle: <Handle <TaskWakeupMethWrapper object at 0x7fc5f002d5b0>(<Future finis...late\r\n\r\n'>)>
Traceback (most recent call last):
  File "/opt/anaconda3/envs/entornor/lib/python3.8/asyncio/events.py", line 81, in _run
    self._context.run(self._callback, *self._args)
RuntimeError: Cannot enter into task <Task pending name='Task-4' coro=<HTTP1ServerConnection._server_request_loop() running at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/tornado/http1connection.py:823> wait_for=<Future finished result=b'GET /kernel...flate\r\n\r\n'> cb=[IOLoop.add_future.<locals>.<lambda>() at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/tornado/ioloop.py:688]> while another task <Task pending name='Task-1' coro=<MultiKernelManager._async_start_kernel() running at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/jupyter_client/multikernelmanager.py:186>> is being executed.
ERROR:asyncio:Exception in callback <TaskWakeupMethWrapper object at 0x7fc611af0fd0>(<Future finis...uest\r\n\r\n'>)
handle: <Handle <TaskWakeupMethWrapper object at 0x7fc611af0fd0>(<Future finis...uest\r\n\r\n'>)>
Traceback (most recent call last):
  File "/opt/anaconda3/envs/entornor/lib/python3.8/asyncio/events.py", line 81, in _run
    self._context.run(self._callback, *self._args)
RuntimeError: Cannot enter into task <Task pending name='Task-5' coro=<HTTP1ServerConnection._server_request_loop() running at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/tornado/http1connection.py:823> wait_for=<Future finished result=b'GET /api/co...quest\r\n\r\n'> cb=[IOLoop.add_future.<locals>.<lambda>() at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/tornado/ioloop.py:688]> while another task <Task pending name='Task-2' coro=<KernelManager._async_start_kernel() running at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/jupyter_client/manager.py:331>> is being executed.
ERROR:asyncio:Exception in callback <TaskWakeupMethWrapper object at 0x7fc5f002da60>(<Future finis...late\r\n\r\n'>)
handle: <Handle <TaskWakeupMethWrapper object at 0x7fc5f002da60>(<Future finis...late\r\n\r\n'>)>
Traceback (most recent call last):
  File "/opt/anaconda3/envs/entornor/lib/python3.8/asyncio/events.py", line 81, in _run
    self._context.run(self._callback, *self._args)
RuntimeError: Cannot enter into task <Task pending name='Task-12' coro=<HTTP1ServerConnection._server_request_loop() running at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/tornado/http1connection.py:823> wait_for=<Future finished result=b'GET /custom...flate\r\n\r\n'> cb=[IOLoop.add_future.<locals>.<lambda>() at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/tornado/ioloop.py:688]> while another task <Task pending name='Task-36' coro=<MappingKernelManager.start_kernel() running at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/notebook/services/kernels/kernelmanager.py:176> cb=[IOLoop.add_future.<locals>.<lambda>() at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/tornado/ioloop.py:688]> is being executed.
ERROR:asyncio:Exception in callback <TaskWakeupMethWrapper object at 0x7fc5f002d790>(<Future finis...late\r\n\r\n'>)
handle: <Handle <TaskWakeupMethWrapper object at 0x7fc5f002d790>(<Future finis...late\r\n\r\n'>)>
Traceback (most recent call last):
  File "/opt/anaconda3/envs/entornor/lib/python3.8/asyncio/events.py", line 81, in _run
    self._context.run(self._callback, *self._args)
RuntimeError: Cannot enter into task <Task pending name='Task-13' coro=<HTTP1ServerConnection._server_request_loop() running at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/tornado/http1connection.py:823> wait_for=<Future finished result=b'GET /static...flate\r\n\r\n'> cb=[IOLoop.add_future.<locals>.<lambda>() at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/tornado/ioloop.py:688]> while another task <Task pending name='Task-36' coro=<MappingKernelManager.start_kernel() running at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/notebook/services/kernels/kernelmanager.py:176> cb=[IOLoop.add_future.<locals>.<lambda>() at /opt/anaconda3/envs/entornor/lib/python3.8/site-packages/tornado/ioloop.py:688]> is being executed.
[I 13:33:33.022 NotebookApp] Kernel started: 4c13344d-0183-4a69-ae2f-b096e0381969, name: ir
[W 13:33:33.029 NotebookApp] 404 GET /nbextensions/widgets/notebook/js/extension.js?v=20211006133325 (::1) 8.840000ms referer=http://localhost:8889/notebooks/INSPYR/Curso%20Data%20Analytics%202021_2022/R/kernel_R_blank.ipynb
dyld: Library not loaded: @rpath/libreadline.6.2.dylib
  Referenced from: /opt/anaconda3/lib/R/lib/libR.dylib
  Reason: image not found
[I 13:33:36.025 NotebookApp] KernelRestarter: restarting kernel (1/5), new random ports
dyld: Library not loaded: @rpath/libreadline.6.2.dylib
  Referenced from: /opt/anaconda3/lib/R/lib/libR.dylib
  Reason: image not found
[W 13:34:33.048 NotebookApp] Timeout waiting for kernel_info reply from 4c13344d-0183-4a69-ae2f-b096e0381969
[W 13:34:37.607 NotebookApp] Nudge: attempt 10 on kernel 4c13344d-0183-4a69-ae2f-b096e0381969
[W 13:34:42.648 NotebookApp] Nudge: attempt 20 on kernel 4c13344d-0183-4a69-ae2f-b096e0381969
[W 13:34:47.703 NotebookApp] Nudge: attempt 30 on kernel 4c13344d-0183-4a69-ae2f-b096e0381969
[W 13:34:52.761 NotebookApp] Nudge: attempt 40 on kernel 4c13344d-0183-4a69-ae2f-b096e0381969
[W 13:34:57.822 NotebookApp] Nudge: attempt 50 on kernel 4c13344d-0183-4a69-ae2f-b096e0381969
[W 13:35:02.875 NotebookApp] Nudge: attempt 60 on kernel 4c13344d-0183-4a69-ae2f-b096e0381969
[W 13:35:07.927 NotebookApp] Nudge: attempt 70 on kernel 4c13344d-0183-4a69-ae2f-b096e0381969
[W 13:35:12.986 NotebookApp] Nudge: attempt 80 on kernel 4c13344d-0183-4a69-ae2f-b096e0381969
[W 13:35:18.039 NotebookApp] Nudge: attempt 90 on kernel 4c13344d-0183-4a69-ae2f-b096e0381969
[W 13:35:23.096 NotebookApp] Nudge: attempt 100 on kernel 4c13344d-0183-4a69-ae2f-b096e0381969
[W 13:35:28.146 NotebookApp] Nudge: attempt 110 on kernel 4c13344d-0183-4a69-ae2f-b096e0381969
/opt/anaconda3/envs/entornor/lib/python3.8/json/encoder.py:257: UserWarning: date_default is deprecated since jupyter_client 7.0.0. Use jupyter_client.jsonutil.json_default.
  return _iterencode(o, 0)
[I 13:35:33.001 NotebookApp] Saving file at /INSPYR/Curso Data Analytics 2021_2022/R/kernel_R_blank.ipynb
[E 13:35:33.058 NotebookApp] Uncaught exception GET /api/kernels/4c13344d-0183-4a69-ae2f-b096e0381969/channels?session_id=a668eb1aa6fd463ea8422ed32d825314 (::1)
    HTTPServerRequest(protocol='http', host='localhost:8889', method='GET', uri='/api/kernels/4c13344d-0183-4a69-ae2f-b096e0381969/channels?session_id=a668eb1aa6fd463ea8422ed32d825314', version='HTTP/1.1', remote_ip='::1')
    Traceback (most recent call last):
      File "/opt/anaconda3/envs/entornor/lib/python3.8/site-packages/tornado/websocket.py", line 956, in _accept_connection
        await open_result
      File "/opt/anaconda3/envs/entornor/lib/python3.8/asyncio/tasks.py", line 349, in __wakeup
        future.result()
    tornado.util.TimeoutError: Timeout
[W 13:35:34.076 NotebookApp] Replacing stale connection: 4c13344d-0183-4a69-ae2f-b096e0381969:a668eb1aa6fd463ea8422ed32d825314

【问题讨论】:

    标签: r jupyter-notebook anaconda3


    【解决方案1】:
    • 您可以使用 Visual Studio Code 代替它来启动 Jupyter 笔记本
    • 您可以将 Jupyter 和 R 放入 docker container 以将其与您的系统隔离,从而最大限度地减少错误
    • 你可以试试新的python env(好像asyncio这个包坏了)

    【讨论】:

    • 非常感谢您的回复 danlooo,由于我已经注册了一个课程,我必须继续使用 anaconda。我今天刚刚在 anaconda 中创建了一个新的 R 环境,所以可以修复那个 asyncio 包吗?我在旧安装的 anaconda 中创建了另外两个环境,但效果不佳,所以我卸载了 anaconda 我创建了一个新的 r 环境,但问题仍然和以前一样。
    • 通常,你有一个用于 R 内核的环境和另一个用于 jupyter 的环境。重现您的错误几乎是不可能的......您是否使用 python 内核代替了同样的错误?
    • 使用 python 一切正常
    • 在 conda envs 中混合 cran 和 conda r 包时遇到问题是一个已知问题。尝试在没有 conda 的 R 会话上安装 IRkernel 包。
    • 非常感谢,我去试试,我会告诉你发生了什么。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-06
    • 1970-01-01
    • 2019-04-23
    • 1970-01-01
    • 2022-01-26
    • 1970-01-01
    • 2018-11-19
    相关资源
    最近更新 更多