Como corrigir: o objeto ‘numpy.ndarray’ não possui o atributo ‘append’


Um erro que você pode encontrar ao usar o NumPy é:

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

Este erro ocorre quando você tenta anexar um ou mais valores ao final de um array NumPy usando a função padrão append() do Python.

Como o NumPy não possui um atributo de acréscimo, um erro é gerado. Para corrigir isso, você deve usar np.append() .

O exemplo a seguir mostra como corrigir esse erro na prática.

Como reproduzir o erro

Suponha que estejamos tentando adicionar um novo valor ao final de um array NumPy usando a função padrão 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'

Recebemos um erro porque o NumPy não possui um atributo de acréscimo.

Como corrigir o erro

Para corrigir esse erro, simplesmente precisamos usar 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])

Usando np.append() adicionamos com sucesso o valor “25” ao final do array.

Observe que se você deseja adicionar um array NumPy ao final de outro array NumPy, é melhor usar a função 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])

Consulte a documentação online para obter uma explicação detalhada das funções de array e concatenação:

Recursos adicionais

Os tutoriais a seguir explicam como corrigir outros erros comuns em Python:

Como corrigir: Nenhum módulo chamado pandas
Como corrigir: nenhum módulo chamado numpy
Como corrigir: as colunas se sobrepõem, mas nenhum sufixo é especificado

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *