[Wissenschaftlich-technische Berechnung von Python] Grundlegende Operation des Arrays, numpy

Sequenzen sind für wissenschaftliche und technische Berechnungen unverzichtbar. Führen Sie grundlegende Operationen an Arrays mit numpy aus.

Inhalt

(1) Erstellen eines Arrays aus der "Liste" (2) Anzeigen / Abrufen von Array-Elementen (3) Sequenzen "Hinzufügen" und "Verketten" (4) Sortieren von Array-Elementen (5) "Vier Regeln" des Arrays (6) Anwenden von Funktionen auf Array-Elemente [Nachtrag] Unterschiede zur Python-Standardliste "(mehrfach)"


(1) "Erstellen eines Arrays aus einer Liste

import numpy as np
"""
Erstellen eines "Arrays"
"""
a_list = [0,1,2,3,4,5] # a_Erstellen Sie eine Liste mit dem Namen Liste und Element 0, 1, 2, 3, 4,Speichern 5
a_array = np.array(a_list)  # a_Machen Sie die Liste zu einem "Array"

print(a_array)

Ergebnis (1)

[0 1 2 3 4 5]


(2) Extraktion von Array-Elementen

(2)


a_list = [0,1,2,3,4,5] # a_Erstellen Sie eine Liste mit dem Namen Liste und Element 0, 1, 2, 3, 4,Speichern 5
a_array = np.array(a_list)  # a_Machen Sie die Liste zu einem "Array"

print(a_array[0]) #Element Null des Arrays anzeigen(Von Null zählen)   # A
print(a_array[1])  # **Nr. 1#B

print(a_array[-1]) #Von hinten zählen. Von der Rückseite-1, -2, ...Es ist in der Reihenfolge.#C

print(a_array[1:3]) #Elementnummer 1(Das zweite Element von links, weil es von Null zählt)Oder erstellen Sie ein Array bis zum dritten Array-Element#D
print(a_array[2:])  #Elementnummer 2(Das dritte Element von links, weil es von Null zählt)Erstellen Sie ein Array, das von bis eins vor dem letzten Element enthält#D
print(a_array[:4]) #Erstellen Sie ein Array mit den Elementnummern 0 bis 4. Array-Element#F

Ergebnis (2)

0 #A 1 #B 5 #C [1 2] #D [2 3 4 5] #E [0 1 2 3] EF

(Hinweis) Das letzte Alphabet entspricht dem Alphabet in der Ausgabezeile der Druckfunktion im obigen Code.


(3) Sequenzen "Hinzufügen" und "Verketten"

Sei np.append (Array, Element).

Beispiel(3-1)



import numpy as np
a_list = [0,1,2,3,4,5] # a_Erstellen Sie eine Liste mit dem Namen Liste und Element 0, 1, 2, 3, 4,Speichern 5
a_array = np.array(a_list)  # a_Machen Sie die Liste zu einem "Array"

a_array = np.append(a_array,10) #Element'10'Etwas vereinbaren_Zum Array hinzufügen
print(a_array)

Ergebnis (3-1)

[ 0 1 2 3 4 5 10]

Beispiel(3-2)Verkettung von Sequenzen


import numpy as np
a_list = [0,1,2,3,4,5] # a_Erstellen Sie eine Liste mit dem Namen Liste und Element 0, 1, 2, 3, 4,Speichern 5
a_array = np.array(a_list)  # a_Liste ist "Array" a_mach es zu einem Array

b_list=[200, 300, 400] #b_Erstellen Sie eine Liste mit dem Namen Liste und Element 200, 300,Speichern Sie 400
b_array = np.array(b_list) #  b_Liste ist "Array" b_mach es zu einem Array

a_array = np.append(a_array, b_array) ##Array a_Array b im Array_Array verketten
print(a_array)

Ergebnis (3-2)

[ 0 1 2 3 4 5 200 300 400]


(4) Sortieren von Array-Elementen

Verwenden Sie sort, um ein Array (aufsteigend) zu erhalten, in dem die Array-Elemente von der kleinsten zur größten Zahl geordnet sind. Verwenden Sie die Optionen sortiert und ** umgekehrt **, um in umgekehrter Reihenfolge (absteigende Reihenfolge) zu sortieren.

(4)Sortieren


import numpy as np
c_list = [14, 90, 4, 23, 61, 110, 75]
c_array = np.array(c_list)

sorted1=np.sort(c_array) #Sequenz c_Erstellen Sie ein Array mit dem Namen sortiert1 mit Arrays, die in aufsteigender Reihenfolge angeordnet sind

sorted2=np.array(sorted(c_array, reverse=True)) #Sequenz c_Erstellen Sie ein Array mit dem Namen sortiert2 mit Arrays, die in absteigender Reihenfolge angeordnet sind

print(sorted1)
print(sorted2)

Ergebnis (4)

[ 4 14 23 61 75 90 110] [110 90 75 61 23 14 4]


(5) "Vier Regeln" des Arrays

import numpy as np
"""
"Vier Regeln" des Arrays
"""
D1_array=np.array([1, 2, 3])
D2_array=np.array([4, 5, 6])

print(D1_array+D2_array) #Hinzufügen= numpy.add(D1_array, D2_array) #A
print(D1_array-D2_array) #Subtrahieren= numpy.subtract(D1_array, D2_array)#B

print(D1_array*D2_array) #Multiplizieren= numpy.multiply(D1_array, D2_array) #C
print(D1_array/D2_array) #Teilung= numpy.divide(D1_array, D2_array) #D

print(D1_array%D2_array) #Überschuss= numpy.add(D1_array, D2_array) #E

print(D1_array**D2_array) #Power numpy.power(D1_array, D2_array) #F

Ergebnis (5):

[5 7 9] #A [-3 -3 -3] #B [ 4 10 18] #C [ 0.25 0.4 0.5 ] #D [1 2 3] #E [ 1 32 729] #F

(Hinweis) Das Alphabet am Ende der Liste entspricht dem Alphabet in der Ausgabezeile der Druckfunktion im obigen Code.


(6) Anwenden von Funktionen auf Array-Elemente

Beispiel(6)Funktionszuordnung


import numpy as np
"""
Anwenden derselben Funktion auf Array-Elemente
"""
D_array=np.array([1, 2, 3]) #Element 1, 2,Array D mit 3_Array erstellen

print(np.cos(D_array))  # D_Bewerten Sie den Wert der cos-Funktion mit allen Elementen des Arrays als Argumente
print(np.sqrt(D_array)) #  D_Sqrt-Funktion mit allen Elementen des Arrays als Argumente(Wurzel)Bewerten Sie den Wert

Ergebnis (6)

[ 0.54030231 -0.41614684 -0.9899925 ] [ 1. 1.41421356 1.73205081]


Nachtrag: Unterschiede zwischen der Python-Standardliste "(mehrfach)" und dem Ndarray von Numpy

Ein [Objekt] namens ndarray, erstellt von numpy.array (Liste) (https://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%96%E3%82%B8%E3%82% A7% E3% 82% AF% E3% 83% 88_ (% E3% 83% 97% E3% 83% AD% E3% 82% B0% E3% 83% A9% E3% 83% 9F% E3% 83% B3 Beim Vergleich von% E3% 82% B0)) mit einem Listenobjekt nach Python weist es die folgenden Funktionen auf (Referenz [1]). Die Berechnungsverarbeitung kann um 1 und 2 beschleunigt werden. Dies liegt daran, dass der Overhead während der Berechnung (Zeit, die für den Speicherzugriff / Funktionsaufruf erforderlich ist) reduziert wird. Siehe Referenz [1] für Details.

  1. Daten werden in einem zusammenhängenden Speicherbereich gespeichert (ähnlich wie bei C-Sprache und Fortran-Arrays).
  2. Konstruiert mit Elementen, die im Grunde die gleiche Typstruktur haben
  3. Die Anzahl der Elemente in jeder Dimension muss gleich sein
  4. Kann bestimmte Operationen mit hoher Geschwindigkeit an (allen) Elementen in einem Array ausführen

Verweise

[1] Kenji Nakaku, "Einführung in Python für Berechnungen von Wissenschaft und Technologie", Technical Review, 2016.

Recommended Posts

[Wissenschaftlich-technische Berechnung von Python] Grundlegende Operation des Arrays, numpy
[Wissenschaftlich-technische Berechnung mit Python] Berechnung des Matrixprodukts mit @ operator, python3.5 oder höher, numpy
[Wissenschaftlich-technische Berechnung mit Python] Monte-Carlo-Integration, numerische Berechnung, Numpy
[Wissenschaftlich-technische Berechnung mit Python] Summenberechnung, numerische Berechnung
[Wissenschaftlich-technische Berechnung mit Python] Histogramm, Visualisierung, Matplotlib
[Wissenschaftlich-technische Berechnung mit Python] Lagrange-Interpolation, numerische Berechnung
[Wissenschaftlich-technische Berechnung mit Python] Logistisches Diagramm, Visualisierung, Matplotlib
[Wissenschaftlich-technische Berechnung mit Python] Polarkoordinatendiagramm, Visualisierung, Matplotlib
[Wissenschaftlich-technische Berechnung mit Python] Lösen (verallgemeinerter) Eigenwertprobleme mit numpy / scipy mithilfe von Bibliotheken
[Wissenschaftlich-technische Berechnung von Python] Zeichnungsanimation der parabolischen Bewegung mit Locus, Matplotlib
[Wissenschaftlich-technische Berechnung von Python] Numerische Berechnung zur Ermittlung des Ableitungswerts (Differential)
[Wissenschaftlich-technische Berechnung mit Python] Analytische Lösungssympathie zur Lösung von Gleichungen
[Wissenschaftlich-technische Berechnung von Python] Zeichnung von 3D-gekrümmter Oberfläche, Oberfläche, Drahtrahmen, Visualisierung, Matplotlib
[Wissenschaftlich-technische Berechnung mit Python] Spline-Interpolation dritter Ordnung, scipy
[Wissenschaftlich-technische Berechnung mit Python] Plot, Visualisierung, Matplotlib von 2D-Daten, die aus einer Datei gelesen wurden
[Wissenschaftlich-technische Berechnung mit Python] Zeichnen, Visualisieren, Matplotlib von 2D-Konturlinien (Farbkonturen) usw.
[Wissenschaftlich-technische Berechnung mit Python] Numerische Lösung der gewöhnlichen Differentialgleichung zweiter Ordnung, Anfangswertproblem, numerische Berechnung
[Wissenschaftlich-technische Berechnung durch Python] Liste der Verwendung von (speziellen) Funktionen, die in der Physik unter Verwendung von scipy verwendet werden
[Wissenschaftliche und technische Berechnung von Python] Zeichnung fraktaler Figuren [Shelpinsky-Dreieck, Bernsley-Farn, fraktaler Baum]
[Wissenschaftlich-technische Berechnung nach Python] Numerische Lösung des Problems des eindimensionalen harmonischen Oszillators nach der Speed-Berle-Methode
[Wissenschaftlich-technische Berechnung nach Python] Numerische Lösung des Eigenwertproblems der Matrix durch Potenzmultiplikation, numerische lineare Algebra
[Wissenschaftlich-technische Berechnung nach Python] Numerische Integration, Trapezgesetz / Simpson-Gesetz, numerische Berechnung, scipy
[Wissenschaftlich-technische Berechnung mit Python] Beispiel für die Visualisierung von Vektorfeld, elektrostatischem Magnetfeld, Matplotlib
[Wissenschaftlich-technische Berechnung von Python] 1-dimensionale 3D-diskrete Hochgeschwindigkeits-Fourier-Transformation, scipy
[Wissenschaftlich-technische Berechnung mit Python] 2D-Random-Walk (Drunken-Walk-Problem), numerische Berechnung
[Wissenschaftlich-technische Berechnung nach Python] Monte-Carlo-Simulation nach der Metropolenmethode der Thermodynamik des 2D-Anstiegsspinsystems
[Wissenschaftlich-technische Berechnung mit Python] Lösen gewöhnlicher Differentialgleichungen, mathematischer Formeln, Sympy
[Wissenschaftlich-technische Berechnung nach Python] Ableitung analytischer Lösungen für quadratische und kubische Gleichungen, mathematische Formeln, Sympy
Liste der grundlegenden Operationen für Python3-Listen, -Tapples, -Wörterbücher und -Sätze
1. Mit Python 1-2 gelernte Statistiken. Berechnung verschiedener Statistiken (Numpy)
Berechnung der technischen Indikatoren durch TA-Lib und Pandas
Grundlegende Bedienung von Python Pandas Series und Dataframe (1)
[Wissenschaftlich-technische Berechnung mit Python] Lösen der gewöhnlichen Differentialgleichung zweiter Ordnung nach der Numerov-Methode, numerische Berechnung
[Wissenschaftlich-technische Berechnung mit Python] Zeichnen, visualisieren, matplotlib 2D-Daten mit Fehlerleiste
[Wissenschaftlich-technische Berechnung nach Python] Lösen der eindimensionalen Newton-Gleichung nach der Runge-Kutta-Methode 4. Ordnung
[Python] Operation der Aufzählung
[Wissenschaftlich-technische Berechnung durch Python] Lösung des Randwertproblems gewöhnlicher Differentialgleichungen im Matrixformat, numerische Berechnung
Grundlegende Bedienung von Pandas
Berechnung des Python-Numpy-Arrays
Grundkenntnisse in Python
Python Basic - Pandas, Numpy -
[Wissenschaftlich-technische Berechnung nach Python] Numerische Lösung von 1-dimensionalen und 2-dimensionalen Wellengleichungen nach der FTCS-Methode (explizite Methode), doppelt gekrümmte partielle Differentialgleichungen
[Wissenschaftlich-technische Berechnung durch Python] Erzeugung ungleichmäßiger Zufallszahlen mit gegebener Wahrscheinlichkeitsdichtefunktion, Monte-Carlo-Simulation
Summe mehrerer Numpy-Arrays (Summe)
[Wissenschaftlich-technische Berechnung mit Python] Numerische Lösung gewöhnlicher Differentialgleichungen erster Ordnung, Anfangswertproblem, numerische Berechnung
Python> Umgang mit 2D-Arrays
Berechnung der Ähnlichkeit durch MinHash
[Wissenschaftlich-technische Berechnung von Python] Wellen "Stöhnen" und Gruppengeschwindigkeit, Wellenüberlagerung, Visualisierung, Physik der High School
Ich habe die Grundoperation von Numpy im Jupyter Lab geschrieben.
Grundlegende Verwendung von Python-F-String
Vergleich der Berechnungsgeschwindigkeit durch Implementierung von Python mpmath (willkürliche Genauigkeitsberechnung) (Hinweis)
[Algorithmus x Python] Berechnung der Basisstatistik Teil2 (Mittelwert, Median, am häufigsten)
[Algorithmus x Python] Berechnung der Basisstatistik (Gesamtwert, Maximalwert, Minimalwert)
Visualisierung der von numpy erstellten Matrix
Zusammenfassung der grundlegenden Implementierung von PyTorch
[Wissenschaftlich-technische Berechnung nach Python] Numerische Lösung der zweidimensionalen Laplace-Poisson-Gleichung für die elektrostatische Position nach der Jacobi-Methode, elliptische partielle Differentialgleichung, Randwertproblem
[Wissenschaftlich-technische Berechnung nach Python] Numerische Lösung der eindimensionalen instationären Wärmeleitungsgleichung nach der Crank-Nicholson-Methode (implizite Methode) und der FTCS-Methode (positive Lösungsmethode), parabolische partielle Differentialgleichung
Grundlegende Grammatik des Python3-Systems (Wörterbuch)
Verhalten von Python3 durch Sakuras Server
[Python] Berechnung des Kappa (k) -Koeffizienten