Solucione el error de atributo: el objeto 'numpy.ndarray' no tiene atributo 'Anexar' en Python
-
el
AttributeError: el objeto 'numpy.ndarray' no tiene atributo 'append'
en Python -
Solucione el
AttributeError: el objeto 'numpy.ndarray' no tiene el atributo 'append'
en Python
Al igual que las listas o los arreglos, NumPy no tiene el método append()
para el arreglo; en su lugar, necesitamos usar el método append()
de NumPy. Podemos agregar múltiples matrices NumPy usando el método append()
.
el AttributeError: el objeto 'numpy.ndarray' no tiene atributo 'append'
en Python
ndarray
es una matriz NumPy n-dimensional, que es útil para varios propósitos, como cuando tenemos múltiples tipos de datos para un modelo. Aquí hay un ejemplo simple usando esto:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
print(f"Type: {type(arr)}")
print(f"Dimension: {arr.ndim}")
print(f"Shape: {arr.shape}")
print(f"Element data type: {arr.dtype}")
Producción :
Type: <class 'numpy.ndarray'>
Dimension: 2
Shape: (2, 3)
Element data type: int32
Ahora, intentemos agregar una matriz en el objeto ndarray
de arriba. Obtendremos el siguiente error:
>>> arr.append([1,2])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'numpy.ndarray' object has no attribute 'append'
Entonces, está claro que el objeto de tipo ndarray
no contiene ningún método llamado append()
.
Solucione el AttributeError: el objeto 'numpy.ndarray' no tiene el atributo 'append'
en Python
Para agregar una nueva matriz en el objeto ndarray
, debemos asegurarnos de que la nueva matriz tenga la misma dimensión que la anterior dentro del ndarray
.
Así es como agregaremos el ndarray
:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
arr = np.append(arr, [[7, 8, 9]], axis=0)
print(arr)
Producción :
[[1 2 3]
[4 5 6]
[7 8 9]]
Aquí, si te fijas, ponemos el eje como 0
. Ahora, si no mencionamos el eje, entonces sucederá esto:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
arr = np.append(arr, [[7, 8, 9]])
print(arr)
Producción :
[1 2 3 4 5 6 7 8 9]
¡Simplemente desenvolvió todos los elementos y luego los convirtió en una matriz!
Ahora, observemos qué sucede si damos una matriz que no tiene la misma dimensión:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
arr = np.append(arr, [[7, 8]], axis=0)
Producción :
ValueError: all the input array dimensions for the concatenation axis must match exactly, but along dimension 1, the array at index 0 has size 3 and the array at index 1 has a size 2
Aquí tenemos el ValueError
por la falta de coincidencia de la dimensión. Para saber más sobre el ndarray
de NumPy, visita este blog.
Artículo relacionado - Python Error
- Administrar fallas de segmentación en Python
- Archivo <Stdin>, Línea 1, en <Módulo> Error en Python
- Arreglar AttributeError: el objeto 'generador' no tiene atributo 'siguiente' en Python
- Arreglar el comando cl.exe falló: no existe tal archivo o directorio en Windows
- Arreglar NameError: la variable no está definida en Python
- Arreglar Socket.Gaierror: [Errno 8] Nodename ni Servname proporcionado, o desconocido en Python