Python numpy.append() Funktion – Arrays zusammenfügen leicht gemacht

Die Python-numpy.append()-Funktion ermöglicht das Zusammenfügen von Arrays und ist besonders nützlich, wenn Sie Daten effizient verarbeiten möchten. Sie gibt ein neues Array zurück, während das ursprüngliche Array unverändert bleibt. Dieses Tutorial zeigt Ihnen, wie Sie die Funktion anwenden und häufige Fehler vermeiden können.

Syntax der numpy.append()-Funktion

numpy.append(arr, values, axis=None)

Parameter:

  1. arr: Das Quell-Array (NumPy-Array oder array-ähnliches Objekt).
  2. values: Die anzuhängenden Werte (array-ähnliches Objekt).
  3. axis: Die Achse, entlang der die Werte angehängt werden sollen:
    • None (Standard): Arrays werden abgeflacht und zusammengefügt.
    • 0: Entlang der ersten Dimension (Zeilen).
    • 1: Entlang der zweiten Dimension (Spalten).

Rückgabewert:

Ein neues Array mit den angehängten Werten.

Beispiele für die Nutzung von numpy.append()

1. Arrays abflachen und zusammenfügen

import numpy as np

arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[10, 20], [30, 40]])

# Arrays werden abgeflacht und zusammengeführt
arr_flat = np.append(arr1, arr2)
print(„Abgeflachtes Array:“, arr_flat)


Output:

Abgeflachtes Array: [ 1 2 3 4 10 20 30 40]

2. Zusammenführen entlang einer Achse

import numpy as np

# Zusammenführen entlang der Achse 0 (Zeilen)
arr_axis0 = np.append([[1, 2], [3, 4]], [[10, 20], [30, 40]], axis=0)
print(„Zusammengeführt entlang Achse 0:\n“, arr_axis0)

# Zusammenführen entlang der Achse 1 (Spalten)
arr_axis1 = np.append([[1, 2], [3, 4]], [[10, 20], [30, 40]], axis=1)
print(„Zusammengeführt entlang Achse 1:\n“, arr_axis1)


Output:

Zusammengeführt entlang Achse 0:
[[ 1 2]
[ 3 4]
[10 20]
[30 40]]

Zusammengeführt entlang Achse 1:
[[ 1 2 10 20]
[ 3 4 30 40]]


3. Arrays unterschiedlicher Form zusammenführen

Die Funktion numpy.append() funktioniert, solange die Dimensionen der Arrays kompatibel sind. Werden die Arrays abgeflacht, können sie auch bei unterschiedlichen Formen kombiniert werden.

import numpy as np

# Abflachen und Zusammenführen
arr_flat = np.append([[1, 2]], [[1, 2, 3], [4, 5, 6]])
print(„Zusammenführung von Arrays unterschiedlicher Form:\n“, arr_flat)

# Zusammenführung entlang der Achse 0
arr_axis0 = np.append([[1, 2]], [[3, 4], [5, 6]], axis=0)
print(„Zusammengeführt entlang Achse 0:\n“, arr_axis0)


Output:

Zusammenführung von Arrays unterschiedlicher Form:
[1 2 1 2 3 4 5 6]

Zusammengeführt entlang Achse 0:
[[1 2]
[3 4]
[5 6]]


4. Häufiger Fehler bei inkompatiblen Dimensionen

Wenn die Dimensionen inkompatibel sind, löst numpy.append() einen ValueError aus.

import numpy as np

# Fehler: Unterschiedliche Formen entlang der Achse 0
arr_error = np.append([[1, 2]], [[1, 2, 3]], axis=0)

Fehler:

ValueError: all the input array dimensions except for the concatenation axis must match exactly

Lösung: Stellen Sie sicher, dass die Dimensionen entlang der angegebenen Achse übereinstimmen.

Tipps zur Nutzung von numpy.append()

  1. Dimensionen überprüfen:
    Nutzen Sie arr.shape, um die Dimensionen von Arrays vor dem Anhängen zu prüfen.
    print(arr1.shape) # Gibt die Form des Arrays zurück

  2. Alternativen zu numpy.append() verwenden:
    Wenn Sie nur entlang bestimmter Achsen arbeiten, ist numpy.concatenate() oft effizienter.
  3. Große Arrays vermeiden:
    Bei sehr großen Arrays sollten Sie vordefinierte Arrays nutzen und Werte direkt zuweisen, da numpy.append() bei jedem Aufruf ein neues Array erstellt, was die Leistung beeinträchtigen kann.

Häufige Anwendungsfälle

  • Datenanalyse: Zusammenführen von Datensätzen.
  • Bildverarbeitung: Kombination von Pixelwerten aus mehreren Bildern.
  • Maschinelles Lernen: Vorbereitung von Trainingsdaten.

Fazit

Die Funktion numpy.append() ist eine flexible Möglichkeit, Arrays in Python zusammenzuführen. Sie bietet Optionen zum Abflachen und zum Zusammenführen entlang bestimmter Achsen. Für optimale Ergebnisse sollten Sie sicherstellen, dass die Dimensionen der Arrays kompatibel sind, und bei großen Arrays auf Alternativen wie numpy.concatenate() zurückgreifen.

Probieren Sie die Beispiele aus und integrieren Sie numpy.append() in Ihre Python-Projekte!

Kostenlosen Account erstellen

Registrieren Sie sich jetzt und erhalten Sie Zugang zu unseren Cloud Produkten.

Das könnte Sie auch interessieren: