Beheben Sie den AttributeError: 'numpy.ndarray' Object Has No Attribute 'Append' in Python
-
das
AttributeError: 'numpy.ndarray' object has no attribute 'append'
in Python -
Korrigieren Sie den
AttributeError: 'numpy.ndarray' object has no attribute 'append'
in Python
Wie Listen oder Arrays hat NumPy keine append()
-Methode für das Array; Stattdessen müssen wir die Methode append()
von NumPy verwenden. Wir können mehrere NumPy-Arrays mit der Methode append()
hinzufügen.
das AttributeError: 'numpy.ndarray' object has no attribute 'append'
in Python
ndarray
ist ein n-dimensionales NumPy-Array, das für verschiedene Zwecke nützlich ist, beispielsweise wenn wir mehrere Datentypen für ein Modell haben. Hier ist ein einfaches Beispiel dafür:
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}")
Ausgang:
Type: <class 'numpy.ndarray'>
Dimension: 2
Shape: (2, 3)
Element data type: int32
Versuchen wir nun, ein Array an das obige Objekt ndarray
anzuhängen. Wir erhalten den folgenden Fehler:
>>> arr.append([1,2])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'numpy.ndarray' object has no attribute 'append'
Es ist also klar, dass das Objekt vom Typ ndarray
keine Methode namens append()
enthält.
Korrigieren Sie den AttributeError: 'numpy.ndarray' object has no attribute 'append'
in Python
Um ein neues Array im ndarray
-Objekt anzuhängen, müssen wir sicherstellen, dass das neue Array dieselbe Dimension hat wie das vorherige innerhalb des ndarray
.
So fügen wir das ndarray
an:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
arr = np.append(arr, [[7, 8, 9]], axis=0)
print(arr)
Ausgang:
[[1 2 3]
[4 5 6]
[7 8 9]]
Wenn Sie es bemerken, setzen wir hier die Achse auf 0
. Wenn wir die Achse nicht erwähnt haben, wird Folgendes passieren:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
arr = np.append(arr, [[7, 8, 9]])
print(arr)
Ausgang:
[1 2 3 4 5 6 7 8 9]
Es hat einfach alle Elemente ausgepackt und dann ein Array daraus gemacht!
Lassen Sie uns nun beobachten, was passiert, wenn wir ein Array angeben, das nicht dieselbe Dimension hat:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
arr = np.append(arr, [[7, 8]], axis=0)
Ausgang:
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
Hier haben wir den ValueError
für die Dimensionsabweichung erhalten. Um mehr über den ndarray
von NumPy zu erfahren, besuchen Sie diesen Blog.
Verwandter Artikel - Python Error
- Adresse wird bereits verwendet Fehler in Python
- AttributeError: __Exit__ in Python
- AttributeError: 'Dict'-Objekt hat kein Attribut 'Append' in Python
- AttributeError: 'NoneType'-Objekt hat kein Attribut 'Text' in Python
- AttributeError: Int-Objekt hat kein Attribut
- AttributeError: Modul Urllib hat keine Attributanforderung