NumPy-Array-Operationen

NumPyNumPyBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

NumPy ist eine Python-Bibliothek, die für numerische Berechnungen verwendet wird. Es ist so konzipiert, dass es mit Arrays und Matrizen umgehen kann, was es zu einem leistungsstarken Werkzeug für wissenschaftliche Berechnungen macht. In diesem Lab werden Sie die folgenden drei Themen zu den NumPy-Array-Operationen lernen:

  1. Mathematische Operationen
  2. Broadcasting
  3. Universal Functions

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL numpy(("NumPy")) -.-> numpy/ArrayBasicsGroup(["Array Basics"]) numpy(("NumPy")) -.-> numpy/MathandStatisticsGroup(["Math and Statistics"]) numpy(("NumPy")) -.-> numpy/AdvancedFeaturesGroup(["Advanced Features"]) numpy/ArrayBasicsGroup -.-> numpy/1d_array("1D Array Creation") numpy/ArrayBasicsGroup -.-> numpy/multi_array("Multi-dimensional Array Creation") numpy/ArrayBasicsGroup -.-> numpy/shape_dim("Shapes and Dimensions") numpy/ArrayBasicsGroup -.-> numpy/data_type("Data Types") numpy/MathandStatisticsGroup -.-> numpy/math_ops("Math Operations") numpy/MathandStatisticsGroup -.-> numpy/stats("Statistical Analysis") numpy/AdvancedFeaturesGroup -.-> numpy/ufuncs("Universal Functions") subgraph Lab Skills numpy/1d_array -.-> lab-1403{{"NumPy-Array-Operationen"}} numpy/multi_array -.-> lab-1403{{"NumPy-Array-Operationen"}} numpy/shape_dim -.-> lab-1403{{"NumPy-Array-Operationen"}} numpy/data_type -.-> lab-1403{{"NumPy-Array-Operationen"}} numpy/math_ops -.-> lab-1403{{"NumPy-Array-Operationen"}} numpy/stats -.-> lab-1403{{"NumPy-Array-Operationen"}} numpy/ufuncs -.-> lab-1403{{"NumPy-Array-Operationen"}} end

Mathematische Operationen

NumPy bietet eine Vielzahl von mathematischen Operationen für Arrays. Diese Operationen können auf einem oder mehreren Arrays durchgeführt werden.

Öffnen der Python-Shell

Öffnen Sie die Python-Shell, indem Sie den folgenden Befehl in der Konsole eingeben.

python3

Importieren von NumPy

NumPy ist bereits installiert. Sie können es in Ihrem Python-Code importieren:

import numpy as np

Elementweise Operationen

Elementweise Operationen sind Operationen, die auf jedes Element im Array durchgeführt werden.

Lassen Sie uns zwei Arrays erstellen und einige elementweise Operationen ausführen:

## Erstellen von zwei Arrays
arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([5, 6, 7, 8])

## Addieren von zwei Arrays
print("Zwei Arrays addieren: ", arr1 + arr2)

## Subtrahieren von zwei Arrays
print("Zwei Arrays subtrahieren: ", arr1 - arr2)

## Multiplizieren von zwei Arrays
print("Zwei Arrays multiplizieren: ", arr1 * arr2)

## Dividieren von zwei Arrays
print("Zwei Arrays dividieren: ", arr1 / arr2)

## Finden des Restes nach der Division von zwei Arrays
print("Modulo von zwei Arrays: ", arr1 % arr2)

## Potenzieren der Elemente eines Arrays
print("Potenzieren eines Arrays: ", arr1 ** 2)

Ausgabe:

Zwei Arrays addieren:  [ 6  8 10 12]
Zwei Arrays subtrahieren:  [-4 -4 -4 -4]
Zwei Arrays multiplizieren:  [ 5 12 21 32]
Zwei Arrays dividieren:  [0.2        0.33333333 0.42857143 0.5       ]
Modulo von zwei Arrays:  [1 2 3 4]
Potenzieren eines Arrays:  [ 1  4  9 16]

Array-basierte Operationen

Array-basierte Operationen sind Operationen, die auf dem gesamten Array durchgeführt werden.

Lassen Sie uns ein Array erstellen und einige array-basierte Operationen ausführen:

## Erstellen eines Arrays
arr = np.array([1, 2, 3, 4])

## Finden der Summe aller Elemente im Array
print("Summe des Arrays: ", np.sum(arr))

## Finden des Produkts aller Elemente im Array
print("Produkt des Arrays: ", np.prod(arr))

## Finden des kleinsten Elements im Array
print("Kleinster Element im Array: ", np.min(arr))

## Finden des größten Elements im Array
print("Größtes Element im Array: ", np.max(arr))

## Finden der durchschnittlichen Zahl aller Elemente im Array
print("Durchschnitt des Arrays: ", np.mean(arr))

## Finden der Standardabweichung aller Elemente im Array
print("Standardabweichung des Arrays: ", np.std(arr))

Ausgabe:

Summe des Arrays:  10
Produkt des Arrays:  24
Kleinster Element im Array:  1
Größtes Element im Array:  4
Durchschnitt des Arrays:  2.5
Standardabweichung des Arrays:  1.118033988749895

Broadcasting

Broadcasting ist eine Eigenschaft von NumPy, die elementweise Operationen zwischen Arrays mit unterschiedlichen Formen ermöglicht. Broadcasting ist besonders nützlich, wenn Sie mit Arrays unterschiedlicher Dimensionen arbeiten.

Lassen Sie uns ein Array erstellen und einige Broadcasting-Operationen ausführen:

## Erstellen von zwei Arrays mit unterschiedlichen Formen
array1 = np.array([1, 2, 3])
array2 = np.array([[4, 5, 6], [7, 8, 9]])

## Broadcasten des kleineren Arrays auf das größere Array
print("Zwei Arrays addieren mit Broadcasting: ", array1 + array2)

print("Zwei Arrays subtrahieren mit Broadcasting: ", array1 - array2)

print("Zwei Arrays multiplizieren mit Broadcasting: ", array1 * array2)

print("Zwei Arrays dividieren mit Broadcasting: ", array1 / array2)

Ausgabe:

Zwei Arrays addieren mit Broadcasting:  [[ 5  7  9]
                                         [ 8 10 12]]

Zwei Arrays subtrahieren mit Broadcasting:  [[-3 -3 -3]
                                              [-6 -6 -6]]

Zwei Arrays multiplizieren mit Broadcasting:  [[ 4 10 18]
                                              [7 16 27]]

Zwei Arrays dividieren mit Broadcasting:  [[0.25       0.4        0.5       ]
                                           [0.14285714 0.25       0.33333333]]

Im obigen Code erstellen wir zwei Arrays, array1 mit der Form (3,) und array2 mit der Form (2,3). Wir führen elementweise Operationen zwischen array1 und array2 durch, dank der Broadcasting-Eigenschaft in NumPy. Das kleinere Array, array1, wird auf das größere Array, array2, übertragen, um elementweise Operationen durchzuführen. Broadcasting ermöglicht es, Operationen auf Arrays mit unterschiedlichen Formen durchzuführen.

Universal Functions

Universal functions, oder ufuncs, sind Funktionen, die auf Arrays elementweise operieren. Sie bieten schnelle und effiziente Operationen auf Arrays.

Lassen Sie uns ein Array erstellen und einige ufuncs ausführen:

## Erstellen eines Arrays
arr = np.array([1, 2, 3, 4])

## Finden der Quadratwurzel jedes Elements im Array
print("Quadratwurzel des Arrays: ", np.sqrt(arr))

## Finden der Exponentialfunktion jedes Elements im Array
print("Exponentialfunktion des Arrays: ", np.exp(arr))

## Finden der Sinusfunktion jedes Elements im Array
print("Sinus des Arrays: ", np.sin(arr))

## Finden der Kosinusfunktion jedes Elements im Array
print("Kosinus des Arrays: ", np.cos(arr))

## Finden des natürlichen Logarithmus jedes Elements im Array
print("Natürlicher Logarithmus des Arrays: ", np.log(arr))

Ausgabe:

Quadratwurzel des Arrays:  [1.         1.41421356 1.73205081 2.        ]
Exponentialfunktion des Arrays:  [ 2.71828183  7.3890561  20.08553692 54.59815003]
Sinus des Arrays:  [ 0.84147098  0.90929743  0.14112001 -0.7568025 ]
Kosinus des Arrays:  [ 0.54030231 -0.41614684 -0.9899925  -0.65364362]
Natürlicher Logarithmus des Arrays:  [0.         0.69314718 1.09861229 1.38629436]

Zusammenfassung

Herzlichen Glückwunsch! Sie haben jetzt über die NumPy-Array-Operationen gelernt, einschließlich mathematischer Operationen, Broadcasting und universeller Funktionen. Mit diesen Kenntnissen können Sie jetzt eine Vielzahl von numerischen Rechenaufgaben mit Python durchführen.