Du hast Fragen? Wir haben Antworten! - Bald findet unser nächster Tag der offenen Tür statt!

Logo site

SymPy: Alles über die Python-Bibliothek für symbolisches Rechnen

-
4
 Minuten Lesezeit
-
Sym^y

SymPy ist eine Python-Bibliothek, die sich der symbolischen Mathematik widmet. Hier erfährst du alles, was du über dieses nützliche Werkzeug für Data Science wissen musst!

Mathematik ist für die Data Science von entscheidender Bedeutung. Glücklicherweise gibt es viele Python-Bibliotheken, die sich diesem Fachgebiet widmen, wie NumPy, SciPy, Scikit-Learn und TensorFlow.

Was mathematische Symbole betrifft, ist die beliebteste Python-Bibliothek SymPy. Ihr Name ist die Abkürzung für „Symbolic Mathematics in Python“ und sie ist zusammen mit NumPy, Pandas und Matplotlib Teil des SciPy-Ökosystems.

 

💡 Auch interessant:

Wordcloud Python
Python oder R ?
Python für Dummies Teil 2
Python Schulung
Was ist Scala und wieso ist Python besser

Was ist SymPy ?

Die SymPy-Bibliothek für Python präsentiert sich als vollständiges Computeralgebrasystem (CAS), wobei der Code einfach gehalten wird, um ihn verständlich zu machen und zu erweitern.

Sie ist vollständig in Python geschrieben und einfach zu benutzen, da sie nur auf mpmath basiert: eine reine Python-Bibliothek für Gleitkommaarithmetik.

Sie konzentriert sich auf Einfachheit und Erweiterbarkeit und versucht nicht, die Python-Sprache zu erweitern. Ihr Ziel ist es, den Benutzern zu ermöglichen, sie zusammen mit anderen Bibliotheken in einer interaktiven Umgebung oder als Teil eines größeren Systems zu verwenden.

Es ist möglich, die Bibliothek in andere Programme einzubetten und sie mit eigenen Funktionen zu modifizieren. Die Bibliothek wird kostenlos unter der BSD-Lizenz angeboten.

Wozu dient SymPy ?

SymPy wird z. B. verwendet, um mathematische Ausdrücke zu manipulieren oder um mathematische Probleme auf Hochschulniveau zu lösen.

Es ermöglicht den Bau eines Rechners und kann als Computer Algebra Systems (CAS) verwendet werden. Es ist jedoch notwendig, die symbolischen Variablen mit der Funktion Symbol() manuell zu deklarieren.

Ein solches System ermöglicht es, alle Arten von Berechnungen symbolisch durchzuführen. Es ist möglich, Deklarationen zu vereinfachen, Ableitungen zu berechnen, Gleichungen zu lösen, mit Matrizen zu interagieren und vieles mehr.

BILDUNGSGUTSCHEIN THUERINGEN

Wie kann man SymPy lernen ?

Die Installation von SymPy ist sehr einfach mit dem Befehl „pip install sympy“ durchzuführen. Das grundlegende Objekt dieser Bibliothek ist das Symbol.

Nachdem du das sympy-Paket als „sp“ importiert hast, kannst du mit dem Befehl „x = sp.symbole(„x“)“ ein Symbol „x“ erstellen, das einen unbekannten Wert darstellt. Es ist möglich, mehrere Symbole wie „x“ und „y“ zu erstellen, je nachdem, wie viele Unbekannte es gibt. Diese Symbole können beliebig addiert, subtrahiert, multipliziert und dividiert werden.

Es gibt viele verschiedene SymPy-Funktionen. Zum Beispiel wandelt sympify() einen beliebigen Ausdruck in einen SymPy-Ausdruck um und konvertiert Standard-Python-Objekte.

Die Funktion evalf() wiederum bewertet einen bestimmten numerischen Ausdruck mit einer maximalen Genauigkeit von 100 Stellen nach dem Komma. Sie kann ein Wörterbuchobjekt mit numerischen Werten als Unterargument akzeptieren.

Die Funktion Lambdify() ermöglicht es dir, deine Ausdrücke in Python-Funktionen umzuwandeln. Die Methode evalf() ist ineffizient, wenn es darum geht, einen Ausdruck über einen großen Wertebereich auszuwerten.

Lambdify funktioniert ähnlich wie eine Lambda-Funktion, übersetzt aber die SymPy-Namen in die Namen der angegebenen digitalen Bibliothek. Dabei handelt es sich normalerweise um NumPy.

Es ist möglich, die Funktionen in den Skript-Text, in das Terminal oder in ein Jupyter-Notebook zu schreiben. Dies liefert eine grafische Darstellung der Berechnungen.

 

💡Auch interessant:

Python für Dummies Teil 1
Python programmieren lernen
Data Cleaning Python
PySpark – Alles wissenswerte
Python – Vermeide diese Fehler

Alternativen zu SymPy

Von den Computeralgebrasystem (CAS)-Tools, die als Alternative zu SymPy fungieren können, sind viele Closed Source. Dies kann zu Problemen führen, wenn man verstehen will, wie ein Ergebnis zustande kommt, und diese Software ist in der Regel teuer.

Eines der bekanntesten Beispiele in diesem Bereich ist Wolfram Mathematica. Es gibt auch kostenlose Tools, wie den kostenlosen Rechner Desmos.

Die bekanntesten Python-Tools, die sich der Mathematik widmen, sind NumPy und Pandas. Doch obwohl NumPy und SymPy zwei Bibliotheken sind, die für die Mathematik entwickelt wurden, sind sie sehr unterschiedlich. NumPy operiert numerisch, während SymPy mit symbolischen Ausdrücken arbeitet. Es ist jedoch möglich, einen SymPy-Ausdruck mit der Funktion lambdify in ein NumPy-Array zu exportieren.

Ebenso bietet SciPy einige SymPy ähnliche Funktionen wie das Lösen von Gleichungen, Integration und Differentiation. Es bietet auch Funktionen für lineare Algebra, die NumPy ähneln. Im Gegensatz zu SymPy ist SciPy nicht vollständig in Python geschrieben. Ein weiterer bemerkenswerter Unterschied ist, dass die mathematischen Funktionen als einfache Python-Funktionen geschrieben werden, die ein Ergebnis zurückgeben, und nicht als mathematische Ausdrücke.

Im Allgemeinen ist SciPy ideal für die Integration von mathematischen Hochgeschwindigkeitsalgorithmen in Python. SymPy hingegen ist eher für die Bedürfnisse eines Mathematikstudenten, Forschers oder Data Scientists geeignet.

Ein weiteres Computeralgebrasystem, das Python als Programmiersprache verwendet, ist SageMath. Es ist jedoch ein viel schwereres Programm als SymPy und erfordert einen Download von über einem Gigabyte.

SymPy ist nicht nur kompakt, sondern hat auch keine anderen Abhängigkeiten als Python. Es kann daher in jeder Umgebung verwendet werden.

Sage seinerseits präsentiert sich als komplettes mathematisches System, indem es alle wichtigen Open-Source-Systeme in einer einzigen Lösung vereint. Die Verwendung einer Funktion ruft die entsprechenden Open-Source-Pakete auf.

Dieses CAS basiert auf einer speziellen Sprache, die über Python gebaut wurde, und einer Reihe von Open-Source-Bibliotheken, die in C, Fortran oder sogar LISP geschrieben sind.

Dies ist bei SymPy nicht der Fall, da es ein eigenständiges System ist, das alle seine Funktionen enthält. Das Besondere an SymyPy ist, dass es eine Python-Bibliothek ist.

Aufgrund seiner Abstraktion von Python kann SageMath als allgemeines CAS fungieren. SymPy hingegen eignet sich besser für die Integration in eine Python-Anwendung.

Viele CAS, die für den Einsatz in interaktiven Umgebungen entwickelt wurden, lassen sich nur schwer automatisieren und erweitern. Dies ist bei SymPy nicht der Fall, da es interaktiv in Python verwendet oder in dein eigenes Programm importiert werden kann. Seine APIs machen es auch einfacher, es zu erweitern.

Fazit

SymPy ist eine leistungsstarke Bibliothek, die sich der symbolischen Mathematik widmet. Mit ihr kannst du Variablen und Funktionen erstellen, aber auch mathematische Aussagen symbolisch erweitern und vereinfachen oder Gleichungen lösen.

Um zu lernen, wie man mit Python und den verschiedenen mathematischen Bibliotheken umgeht, kannst du einen DataScientest-Kurs wählen. Unsere verschiedenen Kurse beinhalten ein Modul, das dieser Programmiersprache gewidmet ist.

Mit unseren Fernkursen kannst du dir alle Fähigkeiten aneignen, die du für die Arbeit als Data Analyst, Data Engineer, Data Scientist, Machine Learning Engineer oder Data Product Manager benötigst.

Unsere Kurse lassen sich in BootCamps oder als Weiterbildung ergänzen, und unsere staatlich anerkannte Weiterbildung kann über den Bildungsgutschein finanziert werden.

Entdecke DataScientest!

DataScientest News

Melde Dich jetzt für unseren Newsletter an, um unsere Guides, Tutorials und die neuesten Entwicklungen im Bereich Data Science direkt per E-Mail zu erhalten.

Möchtest Du informiert bleiben?

Schreib uns Deine E-Mail-Adresse, damit wir Dir die neuesten Artikel zum Zeitpunkt der Veröffentlichung zusenden können!
icon newsletter

DataNews

Starte Deine Karriere im Bereich Data: Erhalte regelmäßig Insiderwissen und wertvolle Karrieretipps in Deinem Posteingang.