Как настроить ноутбук Jupyter для предварительно загруженной ячейки с определенным импортом без использования ipython? - PullRequest
1 голос
/ 13 мая 2019

Я хочу импортировать определенные библиотеки и определять определенные функции в моей первой ячейке записной книжки при каждом запуске. В моем случае я использую контейнер Docker для этой цели. После просмотра нескольких ссылок и ответов (https://vivekbharadwaj.github.io/data%20science/jumpstart-your-Jupyter-notebook-analysis-with-pre-loaded-cells/), я не могу настроить ноутбук, так как у меня есть определенные ошибки.

Это команды:

# Python3 Kernel for JuPyter notebooks
RUN     python3 -m pip install ipykernel
RUN     python3 -m ipykernel install --user
RUN     python3 -m pip install jupyter_contrib_nbextensions
RUN     mkdir -p /usr/local/airflow/.local/share/jupyter/preload_import_code
RUN     echo "define([ 'base/js/namespace' ], function( Jupyter ) { function load_ipython_extension() { if (Jupyter.notebook.get_cells().length===1){ //change this piece of code to what you want Jupyter.notebook.insert_cell_above('code', 0).set_text(\"import os, sys;\"); } } return { load_ipython_extension: load_ipython_extension }; });" >> /usr/local/airflow/.local/share/jupyter/preload_import_code/main.js
RUN     jupyter nbextension enable --sys-prefix preload_import_code/main

С текущими подобными ответами и вопросами, я не могу получить свою конфигурацию из-за ошибки или из-за использования ipython.

Во время работы я получаю следующую ошибку на этом шаге:

Step 36/41 : RUN     jupyter nbextension enable --sys-prefix preload_import_code/main
 ---> Running in c56e28731e36
Enabling notebook extension preload_import_code/main...
      - Validating: problems found:
        - require?  X preload_import_code/main
Removing intermediate container c56e28731e36
 ---> ea0c6505dd57

1 Ответ

0 голосов
/ 20 мая 2019

Я использовал другой подход, специфичный для ipython здесь (https://stackoverflow.com/a/56216780/10834788).

...