62 lines
4.6 KiB
Markdown
62 lines
4.6 KiB
Markdown
## SymPy Merkhilfe
|
|
|
|
|**Kategorie**|**Funktion/Method**|**Beschreibung**|**Beispiel**|
|
|
|---|---|---|---|
|
|
|**Initialisierung**|`symbols()`|Definiert symbolische Variablen|`x, y = symbols('x y')`|
|
|
||`Symbol()`|Erstellt ein einzelnes symbolisches Objekt|`a = Symbol('a')`|
|
|
|**Gleichungen**|`solve()`|Löst Gleichungen oder Gleichungssysteme|`solve(x**2 - 4, x)` → `[ -2, 2 ]`|
|
|
||`Eq()`|Erstellt eine symbolische Gleichung|`Eq(x + y, 2)`|
|
|
|**Differentialrechnung**|`diff()`|Berechnet die Ableitung|`diff(x**2, x)` → `2*x`|
|
|
||`integrate()`|Berechnet das Integral|`integrate(x, x)` → `x**2/2`|
|
|
|**Vereinfachung**|`simplify()`|Vereinfacht einen Ausdruck|`simplify((x**2 - 1)/(x - 1))` → `x + 1`|
|
|
||`expand()`|Erweitert einen Ausdruck|`expand((x + 1)**2)` → `x**2 + 2*x + 1`|
|
|
||`factor()`|Faktorisierte einen Ausdruck|`factor(x**2 - 1)` → `(x - 1)*(x + 1)`|
|
|
|**Lösungen**|`nsolve()`|Numerische Lösung für Gleichungen|`nsolve(x**2 - 2, x, 1.5)` → `1.414213562373095`|
|
|
|**Reihen und Summen**|`summation()`|Berechnet die Summe einer Reihe|`summation(n, (n, 1, 10))` → `55`|
|
|
||`limit()`|Berechnet den Grenzwert|`limit(sin(x)/x, x, 0)` → `1`|
|
|
|**Matrixalgebra**|`Matrix()`|Erstellt eine symbolische Matrix|`Matrix([[1, 2], [3, 4]])`|
|
|
||`.inv()`|Berechnet die Inverse einer Matrix|`Matrix([[1, 2], [3, 4]]).inv()`|
|
|
|**Substitution**|`.subs()`|Ersetzt Symbole durch Werte oder andere Ausdrücke|`(x + y).subs(x, 2)` → `2 + y`|
|
|
|**Plotten**|`plot()`|Erstellt einfache Plots|`plot(x**2, (x, -5, 5))`|
|
|
|**Weitere Funktionen**|`latex()`|Konvertiert einen Ausdruck in LaTeX-Format|`latex(x**2 + y**2)` → `'x^{2} + y^{2}'`|
|
|
||`pretty()`|Gibt einen "schönen" String des Ausdrucks aus|`pretty(x**2 + y)`|
|
|
|
|
---
|
|
|
|
## NumPy Merkhilfe
|
|
|
|
|**Kategorie**|**Funktion/Method**|**Beschreibung**|**Beispiel**|
|
|
|---|---|---|---|
|
|
|**Array-Erstellung**|`np.array()`|Erstellt ein Array aus einer Liste oder Tupel|`np.array([1, 2, 3])`|
|
|
||`np.zeros()`|Erstellt ein Array gefüllt mit Nullen|`np.zeros((2,3))`|
|
|
||`np.ones()`|Erstellt ein Array gefüllt mit Einsen|`np.ones(5)`|
|
|
||`np.arange()`|Erstellt ein Array mit einer Sequenz von Zahlen|`np.arange(0, 10, 2)` → `array([0, 2, 4, 6, 8])`|
|
|
||`np.linspace()`|Erstellt ein Array mit gleichmäßig verteilten Werten|`np.linspace(0, 1, 5)` → `array([0. , 0.25, 0.5, 0.75, 1. ])`|
|
|
|**Grundlegende Operationen**|`+`, `-`, `*`, `/`|Elementweise Addition, Subtraktion, Multiplikation, Division|`a + b`, `a * 2`|
|
|
||`np.dot()`|Berechnet das Skalarprodukt zweier Arrays|`np.dot(a, b)`|
|
|
||`np.transpose()`|Transponiert ein Array|`a.T`|
|
|
|**Indexierung & Slicing**|`a[i]`, `a[i:j]`|Zugriff auf Elemente oder Teilbereiche des Arrays|`a[0]`, `a[1:3]`|
|
|
|**Statistische Funktionen**|`np.mean()`|Berechnet den Mittelwert|`np.mean(a)`|
|
|
||`np.median()`|Berechnet den Median|`np.median(a)`|
|
|
||`np.std()`|Berechnet die Standardabweichung|`np.std(a)`|
|
|
|**Lineare Algebra**|`np.linalg.inv()`|Berechnet die Inverse einer Matrix|`np.linalg.inv(A)`|
|
|
||`np.linalg.det()`|Berechnet die Determinante einer Matrix|`np.linalg.det(A)`|
|
|
||`np.linalg.eig()`|Berechnet Eigenwerte und Eigenvektoren|`np.linalg.eig(A)`|
|
|
|**Broadcasting**|-|Ermöglicht Operationen auf Arrays unterschiedlicher Formen|`a + np.array([1, 2, 3])`|
|
|
|**Reshaping**|`np.reshape()`|Ändert die Form eines Arrays ohne Daten zu ändern|`a.reshape((3, 2))`|
|
|
||`np.flatten()`|Konvertiert ein mehrdimensionales Array in ein eindimensionales Array|`a.flatten()`|
|
|
|**Random Module**|`np.random.rand()`|Erstellt ein Array mit zufälligen Werten aus einer gleichverteilten Verteilung|`np.random.rand(3,2)`|
|
|
||`np.random.randint()`|Erstellt ein Array mit zufälligen Ganzzahlen|`np.random.randint(0, 10, (2,3))`|
|
|
||`np.random.seed()`|Setzt den Seed für reproduzierbare Zufallszahlen|`np.random.seed(42)`|
|
|
|**Mathematische Funktionen**|`np.sin()`, `np.cos()`, `np.exp()`, `np.log()`|Wendet mathematische Funktionen elementweise auf Arrays an|`np.sin(a)`, `np.exp(a)`|
|
|
|**Aggregation**|`np.sum()`|Berechnet die Summe aller Elemente|`np.sum(a)`|
|
|
||`np.prod()`|Berechnet das Produkt aller Elemente|`np.prod(a)`|
|
|
||`np.cumsum()`|Berechnet die kumulative Summe|`np.cumsum(a)`|
|
|
|**Sortieren**|`np.sort()`|Sortiert ein Array|`np.sort(a)`|
|
|
|**Speicher & Datentypen**|`a.dtype`|Gibt den Datentyp des Arrays an|`a.dtype`|
|
|
||`a.astype()`|Ändert den Datentyp eines Arrays|`a.astype(float)`|
|
|
|**Dateioperationen**|`np.loadtxt()`|Lädt Daten aus einer Textdatei in ein Array|`np.loadtxt('data.txt')`|
|
|
||`np.savetxt()`|Speichert ein Array in eine Textdatei|`np.savetxt('output.txt', a)`|
|
|
|**Weitere nützliche Funktionen**|`np.concatenate()`|Verbindet zwei Arrays entlang einer bestehenden Achse|`np.concatenate((a, b), axis=0)`|
|
|
||`np.split()`|Teilt ein Array in mehrere Teilarrays|`np.split(a, 2)`|
|