[PYTHON] [Einführung in Data Scientist] Grundlagen der wissenschaftlichen Berechnung, Datenverarbeitung und Verwendung der Grafikzeichnungsbibliothek ♬ Grundlagen von Scipy

Letzte Nacht habe ich die Grundlagen von Numpy als Grundlage für die Verwendung wissenschaftlicher Berechnungen, Datenverarbeitung und Grafikzeichnungsbibliothek zusammengefasst (https://qiita.com/MuAuan/items/d4d3859bdc01f84b623c), aber heute Abend Ich werde die Grundlagen von Scipy zusammenfassen. Scipy ist jedoch enorm, da es schwer zu verstehen ist, selbst wenn es stillschweigend kopiert wird. Deshalb werde ich die Erklärung in diesem Buch ergänzen. 【Hinweis】 ["Data Scientist Training Course an der Universität von Tokio"](https://www.amazon.co.jp/%E6%9D%B1%E4%BA%AC%E5%A4%A7%E5%AD%A6%E3 % 81% AE% E3% 83% 87% E3% 83% BC% E3% 82% BF% E3% 82% B5% E3% 82% A4% E3% 82% A8% E3% 83% B3% E3% 83 % 86% E3% 82% A3% E3% 82% B9% E3% 83% 88% E8% 82% B2% E6% 88% 90% E8% AC% 9B% E5% BA% A7-Python% E3% 81 % A7% E6% 89% 8B% E3% 82% 92% E5% 8B% 95% E3% 81% 8B% E3% 81% 97% E3% 81% A6% E5% AD% A6% E3% 81% B6 % E3% 83% 87% E2% 80% 95% E3% 82% BF% E5% 88% 86% E6% 9E% 90-% E5% A1% 9A% E6% 9C% AC% E9% 82% A6% Ich werde E5% B0% 8A / dp / 4839965250 / ref = tmm_pap_swatch_0? _ Encoding = UTF8 & qid = & sr =) lesen und die Teile zusammenfassen, an denen ich einige Zweifel habe oder die ich nützlich finde. Daher denke ich, dass die Zusammenfassung unkompliziert sein wird, aber bitte lesen Sie sie und denken Sie, dass der Inhalt nichts mit diesem Buch zu tun hat.

Grundlagen von Scipy

Scipy ist eine Bibliothek für wissenschaftliche und technologische Berechnungen und kann verschiedene mathematische Prozesse ausführen (Berechnung der linearen Algebra, Fourier-Transformation usw.). Hier finden wir die inverse Matrix aus linearer Algebra, Eigenwerten, Gleichungslösungen usw.

2-3-1 Import der Scipy-Bibliothek

>>> import scipy as sp
>>> import scipy.linalg as linalg
>>> from scipy.optimize import minimize_scalar

2-3-2 Matrixberechnung

2-3-2-1 Berechnung der Matrixformel und der inversen Matrix
>>> matrix = np.array([[1,-1,-1],[-1,1,-1],[-1,-1,1]])
>>> matrix
array([[ 1, -1, -1],
       [-1,  1, -1],
       [-1, -1,  1]])
>>> print('Matrixformel', linalg.det(matrix))
Matrixformel-4.0
>>> print('Inverse Matrix','\n', linalg.inv(matrix))
Inverse Matrix
 [[ 0.  -0.5 -0.5]
 [-0.5 -0.  -0.5]
 [-0.5 -0.5  0. ]]
>>> print('Matrix Produkt','\n',matrix.dot(linalg.inv(matrix)))
Matrix Produkt
 [[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
>>> matrix*linalg.inv(matrix)   #Elementprodukt von numpy
array([[ 0. ,  0.5,  0.5],
       [ 0.5, -0. ,  0.5],
       [ 0.5,  0.5,  0. ]])
>>> [email protected](matrix)   #Produkt von numpy
array([[1., 0., 0.],
       [0., 1., 0.],
       [0., 0., 1.]])
2-3-2-2 Eindeutiger Wert und eindeutiger Vektor
>>> eig_value, eig_vector = linalg.eig(matrix)
>>> print('Eigenwert','\n',eig_value)
Eigenwert
 [-1.+0.j  2.+0.j  2.+0.j]
>>> print('Einzigartiger Vektor','\n',eig_vector)
Einzigartiger Vektor
 [[ 0.57735027 -0.81649658  0.42755853]
 [ 0.57735027  0.40824829 -0.81618716]
 [ 0.57735027  0.40824829  0.38862863]]
>>> eig_value, eig_vector = np.linalg.eig(matrix)  #Gleiches gilt für Numpy
>>> print('Einzigartiger Vektor','\n',eig_vector)
Einzigartiger Vektor
 [[ 0.57735027 -0.81649658  0.42755853]
 [ 0.57735027  0.40824829 -0.81618716]
 [ 0.57735027  0.40824829  0.38862863]]
>>> print('Eigenwert','\n',eig_value)   #Eigenwertは実数表記
Eigenwert
 [-1.  2.  2.]

Über scipy.linalg vs numpy.linalg 【Referenz】 Linear Algebra (scipy.linalg) "Scipy.linalg enthält alle Funktionen von numpy.linalg. Außerdem enthält es einige weitere fortgeschrittene Inhalte, die nicht in numpy.linalg enthalten sind."

"Verwenden Sie daher scipy.linalg anstelle von numpy.linalg, es sei denn, Sie möchten scipy nicht als Abhängigkeit vom numpy-Programm hinzufügen."

2-3-3 Newton-Methode

2-3-3-1 Lösung der Gleichung
>>> def my_function(x):
...     return (x**2 + 2*x + 1)
...
>>> from scipy.optimize import newton
>>> newton(my_function,0)
-0.9999999852953906
2-3-3-2 Finden Sie den Mindestwert

Verwenden Sie die Brent-Methode Und finden Sie den Mindestwert von my_function ().

>>> minimize_scalar(my_function, method = 'Brent')
     fun: 0.0
    nfev: 9
     nit: 4
 success: True
       x: -1.0000000000000002
Übung 2-6
>>> def my_function2(x):
...     return (x**3 + 2*x + 1)
...
>>> newton(my_function2,0)
-0.45339765151640365

SciPy Tutorial Für einen Moment kann ich nur schreiben, wie man den Eingang benutzt, deshalb möchte ich ihn bald kopieren. SciPy Tutorial Introduction Basic functions Special functions (scipy.special) Integration (scipy.integrate) Optimization (scipy.optimize) Interpolation (scipy.interpolate) Fourier Transforms (scipy.fft) Signal Processing (scipy.signal) Linear Algebra (scipy.linalg) Sparse eigenvalue problems with ARPACK Compressed Sparse Graph Routines (scipy.sparse.csgraph) Spatial data structures and algorithms (scipy.spatial) Statistics (scipy.stats) Multidimensional image processing (scipy.ndimage) File IO (scipy.io)

Zusammenfassung

・ Fasst die Grundlagen von Scipy in diesem Buch zusammen ・ Scipy leidet oft an Numpy, aber Scipy scheint schneller zu sein.

・ Das SciPy-Tutorial hat viel Volumen, aber es gibt viele interessante Beispiele, daher möchte ich es zusammenfassen.

Recommended Posts

[Einführung in Data Scientist] Grundlagen der wissenschaftlichen Berechnung, Datenverarbeitung und Verwendung der Grafikzeichnungsbibliothek ♬ Grundlagen von Scipy
[Einführung in Data Scientist] Grundlagen der wissenschaftlichen Berechnung, Datenverarbeitung und Verwendung der Grafikzeichnungsbibliothek ♬ Grundlagen von Pandas
[Einführung in Data Scientist] Grundlagen der wissenschaftlichen Berechnung, Datenverarbeitung und Verwendung der Grafikzeichnungsbibliothek ♬ Grundlagen von Matplotlib
[Einführung in Data Scientists] Grundlagen von Python ♬ Funktionen und Klassen
[Einführung in Data Scientist] Grundlagen von Python ♬
[Einführung in Data Scientists] Grundlagen von Python ♬ Bedingte Verzweigung und Schleifen
[Einführung in Data Scientists] Grundlagen von Python ♬ Funktionen und anonyme Funktionen usw.
Verwendung der Grafikzeichnungsbibliothek Bokeh
[Einführung in Datenwissenschaftler] Grundlagen der Wahrscheinlichkeit und Statistik ♬ Wahrscheinlichkeits- / Wahrscheinlichkeitsvariable und Wahrscheinlichkeitsverteilung
Einführung von DataLiner Version 1.3 und Verwendung von Union Append
Jupyter Notebook Grundlagen der Verwendung
Grundlagen von PyTorch (1) - Verwendung von Tensor-
Einführung des Cyber-Sicherheits-Frameworks "MITRE CALDERA": Verwendung und Schulung
Verwenden Sie Dekorateure, um eine erneute Ausführung der Datenverarbeitung zu verhindern
Verwendung der PyTorch-basierten Bildverarbeitungsbibliothek "Kornia"
[Einführung in Python] Verwendung der while-Anweisung (wiederholte Verarbeitung)
[Einführung in Azure für Kaggle-Benutzer] Vergleich zum Starten und Verwenden von Azure Notebooks und Azure Notebooks VM
Verwendung von Python Kivy ~ ~ Grundlagen der Kv-Sprache ~
[Python] Verwendung der Diagrammerstellungsbibliothek Altair
[Einführung in Data Scientists] Deskriptive Statistik und einfache Regressionsanalyse ♬
[Python] Verwendung von Matplotlib, einer Bibliothek zum Zeichnen von Diagrammen
[Einführung in die Udemy Python3 + -Anwendung] 36. Verwendung von In und Not
[Python] Zusammenfassung der Verwendung von Split- und Join-Funktionen
Vergleich der Verwendung von Funktionen höherer Ordnung in Python 2 und 3
[Einführung] Verwendung von open3d
So extrahieren Sie Funktionen von Zeitreihendaten mit PySpark Basics
[Einführung in cx_Oracle] (Teil 2) Grundlagen zum Verbinden und Trennen mit Oracle Database
[Einführung in Python] Verwendung des Booleschen Operators (und ・ oder ・ nicht)
So installieren und verwenden Sie Tesseract-OCR
Verwendung von Anfragen (Python Library)
Zusammenfassung der Verwendung von pyenv-virtualenv
Verwendung von .bash_profile und .bashrc
So installieren und verwenden Sie Graphviz
Zusammenfassung der Verwendung von csvkit
Von der Einführung der GoogleCloudPlatform Natural Language API bis zur Verwendung
[Einführung in Python] Wie verwende ich eine Klasse in Python?
So installieren und verwenden Sie pandas_datareader [Python]
Berechnen Verwenden Sie% des Befehls df
[Python2.7] Zusammenfassung der Verwendung von unittest
Python: Verwendung von Einheimischen () und Globalen ()
Verwendung von "deque" für Python-Daten
Verwendung von Python zip und Aufzählung
Zusammenfassung der Verwendung der Python-Liste
[Python2.7] Zusammenfassung der Verwendung des Unterprozesses
Verwendung ist und == in Python
Verwendung von pandas Timestamp und date_range
[Frage] Wie verwende ich plot_surface von Python?
[Python] Von der morphologischen Analyse von CSV-Daten bis zur CSV-Ausgabe und Diagrammanzeige [GiNZA]
OpenGoddard Verwendung der 2-Python-Bibliothek zur nichtlinearen optimalen Steuerung und Trajektoriengenerierung
Verwendung der OpenGoddard 4-Python-Bibliothek zur nichtlinearen optimalen Steuerung und Trajektoriengenerierung
Verwendung der OpenGoddard 1-Python-Bibliothek zur nichtlinearen optimalen Steuerung und Trajektoriengenerierung
[Einführung in Python] So erhalten Sie den Datenindex mit der for-Anweisung