よしたく blog

ITエンジニアとして自分が知らなかったことをまとめています

Jupyter Notebook で IOPub data rate exceeded エラー

エラー内容

IOPub data rate exceeded.
The notebook server will temporarily stop sending output
to the client in order to avoid crashing it.

Google翻訳による日本語

IOPubデータレートを超えました。
ノートブックサーバーは一時的に出力の送信を停止します
クライアントをクラッシュさせないために。

発生の状況

Jupyter Notebookを使って大量のテキストデータを処理している時、処理結果をprint文で表示しようとしたらJupyter Notebookの画面上に出現した。試しにテキストデータをファイルに出力したところ4.6 MBあった。正確な閾値は確認していないが上記のファイルサイズが一つの指標になればと思い参考として載せておく。

解決策

  1. 一度Jupyter Notebookをすべて落とす
  2. 次のコマンドを実行し設定ファイルを作成する。
    • jupyter notebook --generate-config
    • 設定ファイルは~/.jupyter/jupyter_notebook_config.pyに出力される
  3. 作成した設定ファイルをテキストエディタで編集をする
  4. 編集前
    • #c.NotebookApp.iopub_data_rate_limit = 1000000
  5. 編集後
    • c.NotebookApp.iopub_data_rate_limit = 10000000
    • #コメントアウトを削除する
    • 0を一桁増やす
  6. Jupyter Notebookを起動する