标签: jupyter-console

Jupyter Notebook(仅)内存错误,相同的代码在传统的.py中运行并且有效

我有一个深度学习类的任务,他们提供了一个Jupyter笔记本作为基本代码,事情是在运行数据导入和重塑后,jupyter笔记本通过"内存错误",经过一些分析后试图编译普通.py文件中的相同代码,一切运行良好.

问题是我需要(最好)使用Jupyter笔记本作为开发的基础,因为这种任务更具交互性.

<ipython-input-2-846f80a40ce2> in <module>()
  2 # Load the raw CIFAR-10 data
  3 cifar10_dir = 'datasets\\'
----> 4 X, y = load_CIFAR10(cifar10_dir)

C:\path\data_utils.pyc in load_CIFAR10(ROOT)
     18     f = os.path.join(ROOT, 'cifar10_train.p')
     19     print('Path:  ' + f );
---> 20     Xtr, Ytr = load_CIFAR_batch(f)
     21     return Xtr, Ytr
     22 

C:\path\data_utils.pyc in load_CIFAR_batch(filename)
     10         X = np.array(datadict['data'])
     11         Y = np.array(datadict['labels'])
---> 12         X = X.reshape(-1, 3, 32, 32).transpose(0,2,3,1).astype("float")
     13         return X, Y
     14 

MemoryError: 
Run Code Online (Sandbox Code Playgroud)

错误发生在第12行,我知道这是一个消耗内存的分配,但这并不意味着4 GB的RAM不足以满足,并且当代码在Jupyter之外运行时没有出现问题.

我的猜测是它与Jupyter或Chrome的内存限制有关,但我不确定,也不知道如何解决它.

顺便说说:

  • 我有一台带有4GB内存的Windows 10笔记本电脑
  • 和Chrome版本57.0.2987.133(64位)

python deep-learning jupyter jupyter-notebook jupyter-console

9
推荐指数
2
解决办法
3万
查看次数

pandas 显示:截断列显示而不是换行

由于列名很长,无论设置什么选项,DataFrame 都会以非常混乱的形式显示。

信息:我在 Jupyter QtConsole、pandas 0.20.1 中,在启动时指定了以下相关选项:

pd.set_option('display.max_colwidth', 20)
pd.set_option('expand_frame_repr', False)
pd.set_option('display.max_rows', 25)
Run Code Online (Sandbox Code Playgroud)

问题:如果需要,如何截断 DataFrame,而不是将列换行到下一行,同时保留expand_frame_repr=False

这是一个例子。同样,问题不取决于列数,而是取决于列的长度。

这不会引起问题:

df = pd.DataFrame(np.random.randn(1000, 1000),
                  columns=['col' + str(i) for i in range(1000)])
Run Code Online (Sandbox Code Playgroud)

因为输出是完全可读的并且看起来像: 在此输入图像描述

具有长列名的相同 DataFrame 会导致我正在讨论的问题:

df = pd.DataFrame(np.random.randn(1000, 1000),
                  columns=['very_long_col_name_' 
                           + str(i) for i in range(1000)])
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

有什么方法可以使第二个输出与我缺少的第一个输出一致?(通过指定一个选项,而不是通过.iloc每次我想查看时使用。)

python pandas jupyter-console

8
推荐指数
2
解决办法
6231
查看次数

永远重复“内核死亡,重新启动”

当我尝试跑步时

$ jupyter qtconsole
Run Code Online (Sandbox Code Playgroud)

控制台显示,并显示以下消息

Kernel died, restarting
________________________
Kernel died, restarting
________________________
Kernel died, restarting
________________________
Kernel died, restarting
________________________
Kernel died, restarting
________________________
Run Code Online (Sandbox Code Playgroud)

继续。

尝试$ jupyter qtconsole --debug没有打印其他任何东西,也没有添加

c.Application.log_level = 0
c.Session.debug = True
Run Code Online (Sandbox Code Playgroud)

进入 $USERHOME/.jupyter/jupyter_qtconsole_config.py

另外,我什么也没找到,$USERHOME/.ipython/profile_default/log/周围也没有其他目录。

自上次启动以来,我的配置没有任何改变jupyter-qtconsole

我至少如何找出内核出了什么问题?Jupyter中肯定有一些选项可以获取内核的STDERR输出,以查看导致异常的异常吗?

python qtconsole jupyter jupyter-console

7
推荐指数
1
解决办法
4万
查看次数

笔记本验证失败

运行 jupyter notebook 时出现此错误。任何的想法?

An invalid notebook may not function properly. The validation error was:
Notebook validation failed: ['outputPrepend', 'outputPrepend', 'outputPrepend', 'outputPrepend', 'outputPrepend'] has non-unique elements:
[
 "outputPrepend",
 "outputPrepend",
 "outputPrepend",
 "outputPrepend",
 "outputPrepend"
]
Run Code Online (Sandbox Code Playgroud)

runtime-error python-3.x jupyter-notebook jupyter-console

7
推荐指数
1
解决办法
8648
查看次数

从iPython/Jupyter嵌入式Qt控制台获取结果对象

我在使用此处RichJupyterWidget提供的小部件实现的PyQt5应用程序中有一个嵌入式Jupyter控制台.

控制台集成本身工作正常,Jupyter控制台嵌入在Widget中,Python代码可以执行,结果显示在控制台本身.

但是,我需要做的是每当我运行一些返回Pandas的代码时, DataFrame它会在TableView控制台外部显示它.

这是我的实现的一个工作示例:

import sys

from PyQt5.QtWidgets import QMainWindow, QApplication
from qtconsole.inprocess import QtInProcessKernelManager
from qtconsole.rich_jupyter_widget import RichJupyterWidget


class IPythonConsole:

    def __init__(self):
        self._kernel_manager = None
        self._kernel = None
        self._kernel_client = None

        self.start()

    @property
    def kernel_manager(self) -> QtInProcessKernelManager:
        return self._kernel_manager

    @property
    def kernel(self):
        return self._kernel

    @property
    def kernel_client(self):
        return self._kernel_client

    def start(self):
        self._kernel_manager = QtInProcessKernelManager()
        self._kernel_manager.start_kernel()
        self._kernel = self._kernel_manager.kernel
        self._kernel.gui = 'qt'

        self._kernel_client = self._kernel_manager.client()
        self._kernel_client.start_channels()

    def stop(self):
        self._kernel_client.stop_channels()
        self._kernel_manager.shutdown_kernel()


class IPythonWidget(RichJupyterWidget):
    """RichIPythonWidget …
Run Code Online (Sandbox Code Playgroud)

python python-3.x pyqt5 jupyter jupyter-console

6
推荐指数
0
解决办法
302
查看次数

如何在 ipython 中渲染 matplotlib 图

我有一个运行 Python/JupyterLab 和我所有依赖项的容器。我从以下开始:

docker run --rm -it -p 8888:8888 \
  --mount type=bind,source=/project,target=/work \
  python-3.9.1-jupyterlab
Run Code Online (Sandbox Code Playgroud)

它启动 jupyterlab,我可以通过浏览器连接。一切都很好。


现在我正在尝试使用 VSCode 作为 Python IDE。将 VSCode 中的 shell 附加到我的容器很有帮助,这样我就可以在一个地方运行 iPython 并编辑我的代码。我从 VSCode Docker 扩展运行“附加外壳”:

docker exec -it {containerID} bash <
Run Code Online (Sandbox Code Playgroud)

然后我打开一个 iPython shell:

docker exec -it {containerID} bash <
Run Code Online (Sandbox Code Playgroud)

我看不到任何情节。我试过用不同的后端渲染它们(默认是“agg”)。我认为这是因为内核 - 在容器上执行 - 无法使用主机图形(即,内核可以渲染绘图但无法显示它们)。也许我没有正确映射主机/容器端口。

有人可以就尝试的事情提供一些指导吗?这是我正在使用的容器的图像

matplotlib ipython docker visual-studio-code jupyter-console

6
推荐指数
1
解决办法
219
查看次数

防止 Jupyter Notebooks 更改 cwd

我的文件夹结构是这样设置的:

- project/
  - notebooks/
    - notebook1.ipynb
  - src/
    - module1.py
    - __init__.py
  - data/
    - data.csv
Run Code Online (Sandbox Code Playgroud)

这样我就可以将我的源代码与实际分析分开。我希望能够从中导入模块src并在其中使用它们notebook1,但是每当我打开时notebook1,Jupyter 决定将我的工作目录更改为 inside notebooks

这使我的导入更难维护,因为我必须相对于 Jupyter 的心血来潮导入东西 - 有什么方法可以修复cwdproject,无论我打开什么文件?

我浏览了文档和我的~/.jupyter/jupyter_notebook_config.py, 文件,但没有发现任何可以帮助我的东西。

编辑:我不想在每个脚本的顶部使用os.chdircd

谢谢你的帮助

python jupyter-notebook jupyter-console

5
推荐指数
1
解决办法
363
查看次数

在Jupyter控制台中使用Vi键

我想知道如何在Jupyter控制台中使用类似vi的键绑定-不仅与ipython一起使用,而且与任何内核一起使用。

先前的答案表明这对于ipython是可能的。因此,也许有一些标志或配置文件可以在其中指定。Jupyter似乎不具有与ipython相同的功能,ipython profile并且提供与ipython中相同的标记变量不起作用。

vi vim jupyter jupyter-irkernel jupyter-console

5
推荐指数
1
解决办法
406
查看次数

Jupyter:如何列出正在运行的内核以及哪个笔记本启动了它们?

我还没有在 github 或 jupyter 帮助中找到答案。

TL;DR:我需要一个命令行来告诉我与魔法相同的事情%connect_info,特别是 line Connect with --existing kernel-4e4c970e-cccb-2485-a09d-d56efd10e278.json

我当前的设置是从工作服务器启动 jupyter 笔记本。然后我使用 SSH 连接到该服务器,并且可以通过附加控制台在同一内核中工作:

jupyter console --existing kernel-4e4c970e-cccb-2485-a09d-d56efd10e278.json
Run Code Online (Sandbox Code Playgroud)

(在tmux++设置中,顺便说一句,我经常发现这更方便)vimslimux

问题是:

  1. 获取内核字符串的唯一方法是从笔记本本身(可能很难通过 SSH 访问);
  2. 我有几台笔记本正在运行,有时我需要快速检查我需要哪一台。

那么是否有一个命令可以从服务器上的 shell 运行,该命令会列出正在运行的内核哪个笔记本启动了它们,以及理想情况下是否附加了控制台

ssh remote-server jupyter jupyter-notebook jupyter-console

5
推荐指数
1
解决办法
3838
查看次数

Jupyter笔记本错误!内核死了。它将自动重新启动

错误:内核似乎已死亡。它会自动重新启动。这是特定于几行代码的

当我尝试时,print(3)我在控制台中看到输出,3但是当我尝试运行以下代码时,它会给我一个错误。它工作得很完美,突然抛出这些奇怪的错误。

我尝试重新启动、重新安装和升级所有库,但没有任何效果。

import numpy as np

versicolor_petal_length = np.array([4.7,  4.5,  4.9,  4.,  4.6,  4.5,  4.7,  3.3,  4.6,  3.9,  3.5,
                                    4.2,  4.,  4.7,  3.6,  4.4,  4.5,  4.1,  4.5,  3.9,  4.8,  4.,
                                    4.9,  4.7,  4.3,  4.4,  4.8,  5.,  4.5,  3.5,  3.8,  3.7,  3.9,
                                    5.1,  4.5,  4.5,  4.7,  4.4,  4.1,  4.,  4.4,  4.6,  4.,  3.3,
                                    4.2,  4.2,  4.2,  4.3,  3.,  4.1])

versicolor_petal_width = np.array([1.4,  1.5,  1.5,  1.3,  1.5,  1.3,  1.6,  1.,  1.3,  1.4,  1.,
                                   1.5,  1.,  1.4, …
Run Code Online (Sandbox Code Playgroud)

python python-3.x anaconda jupyter-notebook jupyter-console

5
推荐指数
0
解决办法
3922
查看次数

构建失败,显示 500,请在服务器上运行“jupyter lab build”以在 Jupyter lab 中获取完整输出

我正在尝试在 jupyter 实验室中添加扩展。我转到扩展选项卡并单击扩展上的“安装”。几秒钟后我收到一个弹出窗口说Build failed with 500, please run 'jupyter lab build' on the server for full output

这是它的屏幕截图

谁能告诉我如何解决它或至少找到与该错误相关的日志。

jupyter jupyter-notebook jupyter-console jupyter-lab

5
推荐指数
1
解决办法
1万
查看次数

更改Jupyter Notebook的localhost:8888默认服务器与其他

我有两台通过局域网连接的机器.其他系统的IP地址是192.1xx.xx我想在我的机器上运行jupyter ipython查询,这可以在他的机器上执行.在ipython笔记本的开头,有一个黑屏,其中包含:

[I 11:12:52.802 NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/
Run Code Online (Sandbox Code Playgroud)

我可以将其更改为我指定的位置吗?

jupyter jupyter-notebook jupyter-console

4
推荐指数
3
解决办法
1万
查看次数

从 Jupyter Notebook 删除文件时如何释放磁盘空间

当我从 Jupyter 笔记本环境中删除文件时,磁盘空间没有释放。我删除了大约 40GB 的文件,文件从列表中消失了,甚至从ls -a,但是df -h表明什么也没发生。此外,我使用这些文件杀死了所有进程,甚至重新启动了系统。

当我使用rm一切删除文件时,一切都很好。我怎样才能释放空间,或恢复 thos 文件以使用 删除它们rm

jupyter jupyter-notebook jupyter-console

4
推荐指数
1
解决办法
2189
查看次数