Auf einen Blick: NumPy ist ein leistungsstarkes Paket zur Erstellung und Manipulation von Arrays, das für wissenschaftliches Rechnen und maschinelles Lernen unerlässlich ist. Es verbessert die numerischen Fähigkeiten von Python und unterstützt verschiedene Datentypen.
- Effiziente Funktionen zur Erstellung und Manipulation von Arrays.
- Beinhaltet wichtige Funktionen wie Umformung, Schneiden und Range zum Füllen von Arrays.
Wenn wir Pandas studieren, müssen wir NumPy studieren, denn Pandas enthält NumPy. Hier stelle ich NumPy vor und teile einige grundlegende Funktionen.
Was ist NumPy?
NumPy ist ein Paket , das Arrays erstellt. Es ermöglicht es, Arrays von Zahlen mit unterschiedlicher Präzision und Skalierung sowie Strings zu erstellen, was besonders nützlich für wissenschaftliches Rechnen ist.
Python allein hat nur Floats, ganze Zahlen und imaginäre Zahlen. Aber NumPy erweitert, was Python leisten kann, weil es Folgendes behandelt:
- 32-Bit-Zahlen
- 15 große Zahlen
- Signierte Nummern
- Unsignierte Nummern
- Und mehr
Aber das ist nicht der einzige Grund, NumPy zu verwenden. Es ist auf Effizienz und Skalierung ausgelegt, was es zum Workhouse für große maschinelle Lernbibliotheken (ML) wie TensorFlow macht.
Schauen wir uns nun einige grundlegende Funktionen von NumPy-Arrays an.
Erstellung eines NumPy-Arrays
Erstelle ein Array mit np.array(<array>).
Setzen Sie np.array(1,2,3,4,5) nicht ein, da 1,2,3,4,5 kein Array ist. NumPy würde die Elemente nach den Kommas als Parameter für die Array()- Funktion interpretieren.
Dies erzeugt ein Array:
Ergebnisse:
import numpy as np
arr = np.array([1,2,3])
arr
Ergebnisse:
array([1,2,3])
Array-Form
Ein Array hat eine Form, genau wie zum Beispiel ein 2x2-Array, 2x1-Array usw.
Abfrage der Form folgendermaßen:
arr.shape
Du solltest das als Vektor bezeichnen, wenn du das besser verstehen willst, da es nicht 3x1 ist – denn es hat nur eine Dimension, und ein Blank ist keine Dimension.
(3,)
Dies ist 3x1, da es sich um ein Array aus 3 Arrays der Dimension 1x1 handelt.
Ergebnisse:
arr = np.array([[1],[2],[3]])
arr.shape
Ergebnisse:
(3, 1)
Umformung eines Arrays
Man kann ein Array der Form m x n in jede Kombination umformen, die ein Divisor von m x n ist. Dieses Array der Form (6,) kann auf 2x3 umgeformt werden, da 2*3=6 6 teilt.
Ergebnisse:
import numpy as np
arr = np.array([1,2,3,4,5,6]).reshape(2,3)
print(arr)
Ergebnisse:
[[1 2 3]
[4 5 6]]
Arange
Beachte, dass diese Funktion nicht arrangiert , sondern angeordnet ist, also im Array-Bereich. Nutze sie, um ein Array mit Zahlen abzulegen. (Es gibt viele Möglichkeiten, das zu tun, ein Thema, das wir in einem späteren Beitrag behandeln werden.)
Ergebnisse in:
import numpy as np
arr = np.arange(5)
arr
Ergebnisse in:
array([0, 1, 2, 3, 4])
Slice
Das Slicing eines Arrays ist ein schwieriges Thema, das mit Übung leichter wird. Hier sind einige einfache Beispiele.
Nimm dieses Array.
arr = np.array([1,2,3,4,5,6]).reshape(2,3)
arr
Das sieht so aus:
array([[1, 2, 3],
[4, 5, 6]])
(Man könnte zwar sagen, dass es 2 Zeilen und 3 Spalten gibt, um es verständlicher zu machen, aber das ist technisch gesehen nicht korrekt. Wenn man mehr als zwei Dimensionen hat, verschwindet das Konzept der Reihen und Spalten. Deshalb ist es besser, Dimensionen und Achsen zu sagen.)
Diese Slice-Operationen bedeutet, an der zweiten Position der ersten Achse zu beginnen und bis zum Ende zu führen:
Ergebnisse in:
arr[1:]
Ergebnisse in:
array([[4, 5, 6]])
Dies beginnt am Anfang und geht bis zum Ende:
Ergebnisse in:
arr[0:]
Ergebnisse in:
array([[1, 2, 3],
[4, 5, 6]])
Füge ein Komma hinzu, um anzugeben, welche Spalte:
Ergebnisse in:
arr[:,1]
Ergebnisse in:
array([2, 5])
Wählen Sie entlang der anderen Achse folgendermaßen aus:
Ergebnisse in:
arr[1,:]
Ergebnisse in:
array([4, 5, 6])
Wählen Sie ein einzelnes Element aus.
Ergebnisse:
arr[1,0]
Ergebnisse:
4
Schritt
arr = np.array([1,2,3,4,5,6])
arr[1:6:2]
array([2, 4, 6])
Damit endet diese Einleitung.
Verwandte Literatur
Pandas Guide
- Pandas-Einführung & Tutorials für Anfänger
- Pandas: Wie man CSV- und JSON-Dateien liest
- Wie man ein Pandas-Dataframe aus einem Wörterbuch erstellt
- Wie man Daten in Pandas gruppiert, verkettet und zusammenführt
- Pandas-Datentypen
- Umgang mit fehlenden Daten in Pandas: NaN-Werte erklärt
- NumPy-Einführung mit Beispielen
- Verwendung von StringIO, um getrennte Textdateien in NumPy zu lesen
- Verwendung der NumPy-Bincount-Statistikfunktion
- Top NumPy Statistische Funktionen & Verteilungen
Diese Beiträge sind meine eigenen und spiegeln nicht unbedingt die Position, Strategien oder Meinung von BMC wider.