繁体   English   中英

笔记本验证失败 | 木星

[英]Notebook Validation Failed | Jupyter

我的 Jupyter Notebook 上不断出现一个令人沮丧且持续存在的错误:

保存操作成功,但笔记本似乎无效。 验证错误是:

Notebook validation failed: Additional properties are not allowed ('id' was unexpected):
{
 "metadata": {
  "trusted": true
 },
 "id": "breathing-seventh",
 "cell_type": "code",
 "source": "import pandas as pd\nimport numpy as np\nimport re\nimport datetime\n\nimport json\nimport os\nimport copy\n\nimport seaborn as sns\nimport matplotlib.pyplot as plt",
 "execution_count": 1,
 "outputs": []
}

它指向我的导入列,其中包含:

import pandas as pd
import numpy as np
import re
import datetime

import json
import os
import copy

import seaborn as sns
import matplotlib.pyplot as plt

我还在笔记本中使用 Plotly,我不确定错误是否是由 Plotly 引起的。 我查找了错误并使用了此处提到的修复程序,但错误仍然存在。

请指教。

这是由于最近nbformat中发生的变化,此处对此进行了详细描述。 基本上,nbformat 4.5 引入了这些id标签(如果您查找它们,您可能会在每个单元格中找到它们),因此以早期格式存储的每个笔记本都不应该有这些标签 - 如果早期格式的笔记本有它们,则考虑一个错误。

所以不知何故,您的笔记本被部分更新为具有id标签,但不是笔记本元数据中列出的 nbformat。 这也发生在我身上,这肯定是一个错误。 (我认为更新应该通过nbformat进行,其中 v5.1.1将自动将 4.x 转换为 4.5 ;但我有 5.1.2。那和其他所有package 都与 conda 提供的一样最新我,我已经重新启动了我的 jupyter 服务器。)

无论如何,解决这个问题的方法是在文本编辑器中打开你的笔记本。 滚动到最底部,最后几行应如下所示:

 },
 "nbformat": 4,
 "nbformat_minor": 1
}

您应该可以安全地将nbformat_minor数字更改为 5,保存文件,然后像往常一样再次打开笔记本。 您将不会再收到这些通知。

我在使用旧 python 包的 virtualenvs 中使用旧笔记本时遇到此错误。 当我更新该 virtualenv 中的所有 python 包时,它通常会消失。

我能够通过运行解决这个问题

conda update --all

当我将单元格从 notebook-1 粘贴到 notebook-2 时,我遇到了这个问题。

简单的解决方案是,如果您将代码放在打算重用的单元格中,则不要复制单元格,而只复制单元格中的内容。

通过这种方式,我能够解决错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM