Imprimer le tableau NumPy complet

Muhammad Maisam Abbas 18 juillet 2021
Imprimer le tableau NumPy complet

Ce tutoriel présentera comment imprimer un tableau NumPy complet en Python.

Imprimer le tableau NumPy complet avec la fonction numpy.set_printoptions() en Python

Par défaut, si la longueur de notre tableau est énorme, Python tronquera la sortie lors de l’impression du tableau. Ce phénomène est illustré dans l’exemple de code ci-dessous.

import numpy as np

array = np.arange(10000)
print(array)

Production:

[   0    1    2 ... 9997 9998 9999]

Dans le code ci-dessus, nous avons d’abord créé un tableau NumPy array qui contient des valeurs numériques de 0 à 9999 avec la fonction np.arange() en Python. Nous avons ensuite imprimé les éléments du tableau avec la fonction print(). Nous obtenons une sortie tronquée car le tableau est trop grand pour être affiché complètement.

Ce problème peut être résolu grâce à la fonction numpy.set_printoptions(). Il définit différents paramètres liés aux tableaux d’impression en Python. Nous pouvons utiliser le paramètre threshold de la fonction numpy.set_printoptions() à sys.maxsize pour imprimer le tableau NumPy complet. Pour utiliser la propriété sys.maxsize, nous devons également importer la bibliothèque sys. L’exemple de code suivant montre comment imprimer un tableau NumPy complet avec la fonction numpy.set_printoptions() et la propriété sys.maxsize en Python.

import sys
import numpy as np

array = np.arange(10001)
np.set_printoptions(threshold=sys.maxsize)
print(array)

Production:

[    0     1     2     3     4     5     6     7     8     9    10    11
    12    13    14    15    16    17    18    19    20    21    22    23
    24    25    26    27    28    29    30    31    32    33    34    35
    36    37    38    39    40    41    42    43    44    45    46    47
    48    49    50    51    52    53    54    55    56    57    58    59
    60    61    62    63    64    65    66    67    68    69    70    71
    72    73    74    75    76    77    78    79    80    81    82    83
    84    85    86    87    88    89    90    91    92    93    94    95
    96    97    98    99   100   101   102   103   104   105   106   107
   108   109   110   111   112   113   114   115   116   117   118   119
...
  9912  9913  9914  9915  9916  9917  9918  9919  9920  9921  9922  9923
  9924  9925  9926  9927  9928  9929  9930  9931  9932  9933  9934  9935
  9936  9937  9938  9939  9940  9941  9942  9943  9944  9945  9946  9947
  9948  9949  9950  9951  9952  9953  9954  9955  9956  9957  9958  9959
  9960  9961  9962  9963  9964  9965  9966  9967  9968  9969  9970  9971
  9972  9973  9974  9975  9976  9977  9978  9979  9980  9981  9982  9983
  9984  9985  9986  9987  9988  9989  9990  9991  9992  9993  9994  9995
  9996  9997  9998  9999 10000]

Dans le code ci-dessus, nous avons d’abord créé un tableau NumPy array qui contient des éléments de 0 à 10000 avec la fonction numpy.arange(). Nous définissons les options d’impression pour le tableau au maximum avec la fonction np.set_printoptions(threshold = sys.maxsize). Nous avons ensuite imprimé le tableau complet avec la simple fonction print() en Python.

Il existe une autre solution à notre problème qui implique uniquement l’utilisation de la bibliothèque NumPy. Nous pouvons spécifier le threshold à l’intérieur de la fonction numpy.set_printoptions() pour être égal à np.inf pour imprimer le tableau complet en Python. La propriété np.inf spécifie que le print() s’exécutera indéfiniment jusqu’à ce que tout le tableau soit imprimé. Voir l’exemple de code suivant.

import numpy as np

array = np.arange(10001)
np.set_printoptions(threshold=np.inf)
print(array)

Production:

[    0     1     2     3     4     5     6     7     8     9    10    11
    12    13    14    15    16    17    18    19    20    21    22    23
    24    25    26    27    28    29    30    31    32    33    34    35
    36    37    38    39    40    41    42    43    44    45    46    47
    48    49    50    51    52    53    54    55    56    57    58    59
    60    61    62    63    64    65    66    67    68    69    70    71
    72    73    74    75    76    77    78    79    80    81    82    83
    84    85    86    87    88    89    90    91    92    93    94    95
    96    97    98    99   100   101   102   103   104   105   106   107
   108   109   110   111   112   113   114   115   116   117   118   119
...
  9912  9913  9914  9915  9916  9917  9918  9919  9920  9921  9922  9923
  9924  9925  9926  9927  9928  9929  9930  9931  9932  9933  9934  9935
  9936  9937  9938  9939  9940  9941  9942  9943  9944  9945  9946  9947
  9948  9949  9950  9951  9952  9953  9954  9955  9956  9957  9958  9959
  9960  9961  9962  9963  9964  9965  9966  9967  9968  9969  9970  9971
  9972  9973  9974  9975  9976  9977  9978  9979  9980  9981  9982  9983
  9984  9985  9986  9987  9988  9989  9990  9991  9992  9993  9994  9995
  9996  9997  9998  9999 10000]

Nous définissons le paramètre threshold sur np.inf avec la fonction np.set_printoptions(). Nous avons ensuite imprimé le tableau complet avec la simple fonction print() en Python. Cette approche est préférée à la méthode précédente car cette approche ne nécessite que la bibliothèque NumPy.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn