Comment imprimer le tableau NumPy complet, sans troncature ?

Lorsque j'imprime un tableau numpy, j'obtiens une représentation tronquée, mais je veux le tableau complet.

Existe-t-il un moyen de faire cela ?

Exemples:

>>> numpy.arange(10000)
array([   0,    1,    2, ..., 9997, 9998, 9999])

>>> numpy.arange(10000).reshape(250,40)
array([[   0,    1,    2, ...,   37,   38,   39],
       [  40,   41,   42, ...,   77,   78,   79],
       [  80,   81,   82, ...,  117,  118,  119],
       ..., 
       [9880, 9881, 9882, ..., 9917, 9918, 9919],
       [9920, 9921, 9922, ..., 9957, 9958, 9959],
       [9960, 9961, 9962, ..., 9997, 9998, 9999]])
Solution

Utilisez numpy.set_printoptions :

import sys
import numpy
numpy.set_printoptions(threshold=sys.maxsize)
Commentaires (3)

On dirait que vous utilisez numpy.

Si c'est le cas, vous pouvez ajouter :

import numpy as np
np.set_printoptions(threshold=np.nan)

Cela désactivera l'impression des coins. Pour plus d'informations, consultez ce Tutoriel NumPy.

Commentaires (1)

Voici un moyen unique de le faire, qui est utile si vous ne voulez pas modifier vos paramètres par défaut :

def fullprint(*args, **kwargs):
  from pprint import pprint
  import numpy
  opt = numpy.get_printoptions()
  numpy.set_printoptions(threshold='nan')
  pprint(*args, **kwargs)
  numpy.set_printoptions(**opt)
Commentaires (3)