Stampa array numpy completo
Questo tutorial introdurrà come stampare un array NumPy completo in Python.
Stampa un array completo di NumPy con la funzione numpy.set_printoptions()
in Python
Per impostazione predefinita, se la lunghezza del nostro array è enorme, Python troncherà l’output quando l’array verrà stampato. Questo fenomeno è illustrato nell’esempio di codice riportato di seguito.
import numpy as np
array = np.arange(10000)
print(array)
Produzione:
[ 0 1 2 ... 9997 9998 9999]
Nel codice sopra, abbiamo prima creato un array NumPy array
che contiene valori numerici da 0 a 9999 con la funzione np.arange()
in Python. Abbiamo quindi stampato gli elementi dell’array con la funzione print()
. Otteniamo un output troncato perché l’array è troppo grande per essere visualizzato completamente.
Questo problema può essere risolto con la funzione numpy.set_printoptions()
. Imposta diversi parametri relativi agli array di stampa in Python. Possiamo usare il parametro threshold
della funzione numpy.set_printoptions()
su sys.maxsize
per stampare l’array NumPy completo. Per utilizzare la proprietà sys.maxsize
, dobbiamo importare anche la libreria sys
. Il seguente esempio di codice mostra come stampare un array NumPy completo con la funzione numpy.set_printoptions()
e la proprietà sys.maxsize
in Python.
import sys
import numpy as np
array = np.arange(10001)
np.set_printoptions(threshold=sys.maxsize)
print(array)
Produzione:
[ 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]
Nel codice sopra, abbiamo prima creato un array NumPy array
che contiene elementi da 0 a 10000 con la funzione numpy.arange()
. Impostiamo le opzioni di stampa per l’array al massimo con la funzione np.set_printoptions(threshold = sys.maxsize)
. Abbiamo quindi stampato l’intero array con la semplice funzione print()
in Python.
C’è un’altra soluzione al nostro problema che prevede solo l’uso della libreria NumPy
. Possiamo specificare che la threshold
all’interno della funzione numpy.set_printoptions()
sia uguale a np.inf
per stampare l’array completo in Python. La proprietà np.inf
specifica che print()
funzionerà all’infinito finché non verrà stampato l’intero array. Vedere il seguente esempio di codice.
import numpy as np
array = np.arange(10001)
np.set_printoptions(threshold=np.inf)
print(array)
Produzione:
[ 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]
Impostiamo il parametro threshold
su np.inf
con la funzione np.set_printoptions()
. Abbiamo quindi stampato l’intero array con la semplice funzione print()
in Python. Questo approccio è preferito rispetto al metodo precedente perché questo approccio richiede solo la libreria NumPy
.
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