Numpy Python

NumPy Arrays zusammenführen

NumPy bietet leistungsstarke Werkzeuge zur Manipulation von Arrays, und das Verständnis, wie man Arrays zusammenführt, ist für Datenanalysen und wissenschaftliche Berechnungen unerlässlich. Experimentieren Sie mit den bereitgestellten Beispielen, um Ihr Verständnis zu vertiefen!


3 Minuten Lesezeit
11 Okt 2024
NumPy Arrays zusammenführen

Was lerne ich in diesem Kurs?

In diesem Tutorial werden einfache bis fortgeschrittene Methoden zum Mergen von Numpy Arrays schrittweise vorgestellt.

Numpy-Installation

Falls numpy noch nicht installiert ist, kann es über pip installiert werden:

pip install numpy

Arrays erstellen und mit numpy.concatenate mergen

Mit numpy.concatenate können Arrays entlang einer bestimmten Achse kombiniert werden. Wir starten mit kleinen Arrays und kombinieren sie zeilenweise und spaltenweise.

Beispiel 1: Einfache Arrays entlang der Zeilenachse (axis=0) mergen

import numpy as np

# Zwei einfache Arrays erstellen
array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])

# Visualisierung der Arrays
print("Array 1:", array1)
print("Array 2:", array2)

# Mergen entlang der Zeilenachse (axis=0)
merged_array = np.concatenate((array1, array2), axis=0)

# Ausgabe des gemergten Arrays
print("Gemergtes Array entlang der Zeilenachse:", merged_array)

Ausgabe:

Array 1: [1 2 3]
Array 2: [4 5 6]
Gemergtes Array entlang der Zeilenachse: [1 2 3 4 5 6]

Hier werden zwei eindimensionale Arrays entlang der Zeilenachse zu einem einzigen Array kombiniert.

Beispiel 2: Mehrdimensionale Arrays entlang der Zeilenachse (axis=0) mergen

# Mehrdimensionale Arrays erstellen
array3 = np.array([[1, 2], [3, 4]])
array4 = np.array([[5, 6], [7, 8]])

# Visualisierung der Arrays
print("Array 3:\n", array3)
print("Array 4:\n", array4)

# Mergen entlang der Zeilenachse (axis=0)
merged_2d_array = np.concatenate((array3, array4), axis=0)

# Ausgabe des gemergten Arrays
print("Gemergtes Array entlang der Zeilenachse:\n", merged_2d_array)

Ausgabe:

Array 3:
 [[1 2]
 [3 4]]
Array 4:
 [[5 6]
 [7 8]]
Gemergtes Array entlang der Zeilenachse:
 [[1 2]
 [3 4]
 [5 6]
 [7 8]]

In diesem Beispiel werden zwei 2x2-Arrays entlang der Zeilenachse kombiniert, sodass das Ergebnis ein 4x2-Array ist.

Arrays mit numpy.hstack und numpy.vstack mergen

Die Funktionen hstack und vstack ermöglichen es, Arrays einfach horizontal (spaltenweise) oder vertikal (zeilenweise) zu mergen.

Beispiel 3: Arrays horizontal mit hstack mergen

# Horizontales Mergen von 2x2 Arrays
array5 = np.array([[1, 2], [3, 4]])
array6 = np.array([[5, 6], [7, 8]])

# Visualisierung der Arrays
print("Array 5:\n", array5)
print("Array 6:\n", array6)

# Horizontales Mergen (spaltenweise)
hstacked_array = np.hstack((array5, array6))

# Ausgabe des gemergten Arrays
print("Horizontal gemergtes Array:\n", hstacked_array)

Ausgabe:

Array 5:
 [[1 2]
 [3 4]]
Array 6:
 [[5 6]
 [7 8]]
Horizontal gemergtes Array:
 [[1 2 5 6]
 [3 4 7 8]]

Hier werden zwei Arrays spaltenweise kombiniert, sodass sich ein Array mit vier Spalten ergibt.

Beispiel 4: Arrays vertikal mit vstack mergen

# Vertikales Mergen von 1x4 Arrays
array7 = np.array([1, 2, 3, 4])
array8 = np.array([5, 6, 7, 8])

# Visualisierung der Arrays
print("Array 7:", array7)
print("Array 8:", array8)

# Vertikales Mergen (zeilenweise)
vstacked_array = np.vstack((array7, array8))

# Ausgabe des gemergten Arrays
print("Vertikal gemergtes Array:\n", vstacked_array)

Ausgabe:

Array 7: [1 2 3 4]
Array 8: [5 6 7 8]
Vertikal gemergtes Array:
 [[1 2 3 4]
 [5 6 7 8]]

In diesem Beispiel werden zwei eindimensionale Arrays zeilenweise kombiniert, was zu einem 2x4-Array führt.

Arrays mit numpy.stack mergen

Mit numpy.stack können Arrays entlang einer neuen Achse kombiniert werden. Dies fügt eine zusätzliche Dimension hinzu, was besonders bei mehrdimensionalen Daten nützlich ist.

Beispiel 5: Arrays entlang einer neuen Achse mergen

# Mehrdimensionale Arrays erstellen
array9 = np.array([[1, 2], [3, 4]])
array10 = np.array([[5, 6], [7, 8]])

# Visualisierung der Arrays
print("Array 9:\n", array9)
print("Array 10:\n", array10)

# Mergen entlang einer neuen Achse
stacked_array = np.stack((array9, array10), axis=0)

# Ausgabe des gemergten Arrays
print("Gemergtes Array entlang einer neuen Achse:\n", stacked_array)

Ausgabe:

Array 9:
 [[1 2]
 [3 4]]
Array 10:
 [[5 6]
 [7 8]]
Gemergtes Array entlang einer neuen Achse:
 [[[1 2]
  [3 4]]

 [[5 6]
  [7 8]]]

In diesem Beispiel wird eine zusätzliche Dimension (Achse 0) hinzugefügt, wodurch die Arrays in einer höheren Dimension kombiniert werden.