Vollständiges NumPy-Array drucken

Muhammad Maisam Abbas 18 Juli 2021
Vollständiges NumPy-Array drucken

In diesem Tutorial erfahren Sie, wie Sie ein vollständiges NumPy-Array in Python drucken.

Drucken Sie ein vollständiges NumPy-Array mit der Funktion numpy.set_printoptions() in Python

Wenn die Länge unseres Arrays sehr groß ist, schneidet Python standardmäßig die Ausgabe ab, wenn das Array gedruckt wird. Dieses Phänomen wird im folgenden Codebeispiel demonstriert.

import numpy as np

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

Ausgabe:

[   0    1    2 ... 9997 9998 9999]

Im obigen Code haben wir zuerst mit der Funktion np.arange() in Python ein NumPy-Array array erstellt, das numerische Werte von 0 bis 9999 enthält. Wir haben dann die Elemente des Arrays mit der Funktion print() gedruckt. Wir erhalten eine abgeschnittene Ausgabe, weil das Array zu groß ist, um vollständig angezeigt zu werden.

Dieses Problem kann mit der Funktion numpy.set_printoptions() gelöst werden. Es setzt verschiedene Parameter in Bezug auf das Drucken von Arrays in Python. Wir können den Parameter threshold der Funktion numpy.set_printoptions() auf sys.maxsize verwenden, um das komplette NumPy-Array zu drucken. Um die Eigenschaft sys.maxsize zu verwenden, müssen wir auch die Bibliothek sys importieren. Das folgende Codebeispiel zeigt, wie Sie ein vollständiges NumPy-Array mit der Funktion numpy.set_printoptions() und der Eigenschaft sys.maxsize in Python drucken.

import sys
import numpy as np

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

Ausgabe:

[    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]

Im obigen Code haben wir zuerst mit der Funktion numpy.arange() ein NumPy-Array array erstellt, das Elemente von 0 bis 10000 enthält. Wir setzen die Druckoptionen für das Array mit der Funktion np.set_printoptions(threshold = sys.maxsize) auf Maximum. Wir haben dann das vollständige Array mit der einfachen Funktion print() in Python gedruckt.

Es gibt eine andere Lösung für unser Problem, die nur die Verwendung der Bibliothek NumPy beinhaltet. Wir können den threshold innerhalb der Funktion numpy.set_printoptions() so festlegen, dass er gleich np.inf ist, um das komplette Array in Python zu drucken. Die Eigenschaft np.inf gibt an, dass print() unendlich ausgeführt wird, bis das gesamte Array gedruckt ist. Siehe das folgende Codebeispiel.

import numpy as np

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

Ausgabe:

[    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]

Wir setzen den Parameter threshold mit der Funktion np.set_printoptions() auf np.inf. Wir haben dann das vollständige Array mit der einfachen Funktion print() in Python gedruckt. Dieser Ansatz wird der vorherigen Methode vorgezogen, da dieser Ansatz nur die Bibliothek NumPy benötigt.

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