Come risolvere il problema: l'oggetto 'numpy.ndarray' non ha l'attributo 'append'


Un errore che potresti riscontrare durante l’utilizzo di NumPy è:

 AttributeError: 'numpy.ndarray' object has no attribute 'append'

Questo errore si verifica quando si tenta di aggiungere uno o più valori alla fine di un array NumPy utilizzando la funzione standard Python append() .

Poiché NumPy non ha un attributo append, viene generato un errore. Per risolvere questo problema, dovresti invece usare np.append() .

L’esempio seguente mostra come correggere questo errore nella pratica.

Come riprodurre l’errore

Supponiamo di provare ad aggiungere un nuovo valore alla fine di un array NumPy utilizzando la funzione standard Python append() :

 import numpy as np

#define NumPy array
x = np. array ([1, 4, 4, 6, 7, 12, 13, 16, 19, 22, 23])

#attempt to add the value '25' to end of NumPy array
x. append (25)

AttributeError: 'numpy.ndarray' object has no attribute 'append'

Riceviamo un errore perché NumPy non ha un attributo di aggiunta.

Come correggere l’errore

Per correggere questo errore, dobbiamo semplicemente utilizzare invece np.append() :

 import numpy as np

#define NumPy array
x = np. array ([1, 4, 4, 6, 7, 12, 13, 16, 19, 22, 23])

#append the value '25' to end of NumPy array
x = np. append (x, 25)

#view updated array
x

array([ 1, 4, 4, 6, 7, 12, 13, 16, 19, 22, 23, 25])

Utilizzando np.append() abbiamo aggiunto con successo il valore “25” alla fine dell’array.

Tieni presente che se desideri aggiungere un array NumPy alla fine di un altro array NumPy, è meglio utilizzare la funzione np.concatenate() :

 import numpy as np

#define two NumPy arrays
a = np. array ([1, 4, 4, 6, 7, 12, 13, 16, 19, 22, 23])
b = np. array ([25, 26, 26, 29])

#concatenate two arrays together
c = np. concatenate ((a, b))

#view resulting array
vs

array([ 1, 4, 4, 6, 7, 12, 13, 16, 19, 22, 23, 25, 26, 26, 29])

Fare riferimento alla documentazione in linea per una spiegazione dettagliata delle funzioni di array e concatenazione:

Risorse addizionali

I seguenti tutorial spiegano come correggere altri errori comuni in Python:

Come risolvere il problema: nessun modulo denominato Pandas
Come risolvere: nessun modulo denominato numpy
Come risolvere il problema: le colonne si sovrappongono ma non è specificato alcun suffisso

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *