2017-05-22 2 views
3

J'ai stocké un gros fichier de dictionnaire au format pickle numpy. Je peux l'ouvrir dans l'ancienne application de cahier de jupyter. Mais, dans une version plus récente lorsque je lance cette ligne, je vois une erreur IOPub.Charge numérique dans le carnet Jupyter "Débit de données IOPub dépassé."

big_dict = np.load('a_large_dictionary.npy').all() 

L'erreur:

IOPub data rate exceeded. 
The notebook server will temporarily stop sending output 
to the client in order to avoid crashing it. 
To change this limit, set the config variable 
`--NotebookApp.iopub_data_rate_limit`. 

Il semble quelque chose se passe en arrière-plan que je n'ai pas le contrôle sur. C'est étrange car je n'essaie pas de charger/visualiser le contenu de ce fichier dans NotebookApp!

Une idée? Comment charger un gros fichier sans modifier la configuration de Notebookapp? (encore une fois, je ne veux pas montrer le contenu que je viens de lire du fichier dans la variable.)

Répondre

1

Le problème est qu'en cas d'erreur, numpy.load va imprimer le contenu. Tout d'abord, essayez de charger le fichier pickle dans le terminal ou dans un autre environnement python autre que Notebook pour trouver l'erreur. Dans ce cas, le chargement d'une ancienne version de numpy décapé nécessite un argument de codage. Ce code a résolu le problème:

big_dict = np.load('a_large_dictionary.npy', encoding='latin1').all()