Ich war nie besonders an Sprachen interessiert.
Stellt sich heraus, dass ich mich in der Schule einfach nur auf die falschen konzentriert habe :D
Nachdem ich mit Matlab angefangen habe bin ich inzwischen ein großer Fan von Python. Es hat eine kleine Einstiegshürde und bietet diverse fertige und gut dokumentierte Lösungen im Bereich Data Science.
Übersicht was ich häufig nutze. Einige Zeilen Code gibt es in diesem Snippet.
Die Auflistung ist leider sehr oberflächlich und enthält worauf ich immer wieder zurück falle.
PyCharm von JetBrains als sehr bequemes und mächtiges IDE
Numpy zum hantieren mit Mathematik: Arrays, Vektoren, etc.
Pandas zum arbeiten mit Daten in Tabellenform, inkl. schnelles plotten
Sonstiges mit ich mich mal beschäftigt habe:
Plots zu erzeugen ist eine neverending Story. Bisher habe ich keine finale Meinung und wechsle häufig hin und her.
Bokeh für interaktive Dashboards (Hier gibts ein Interface für Daten mit Positionsinformationen, dass ich mir geschrieben haben)
Plotly macht sich mit plotly.express sehr gut für einfache schnelle und interaktive plots, aber wenn es ins Detail geht wird es für mich verwirrend.
Seaborn sieht grundsätzlich sehr schön aus
Mit Matplotlib als Grundlage ist eigentlich alles hinzufrickeln was man möchte.
Vor kurzem habe ich recherchiert wie ich meine Projekte am besten dokumentieren will. Auf realpython.com gibt es einen guten Artikel der das Thema allgemein aber gründlich behandelt.
Sphinx scheint das Mittel der Wahl zu sein. Hier einige Beispiele mit guten Erste-Schritte Anleitungen:
Es gibt diverse Alternativen. Hier einige die ich interessant fand, aber noch nicht getestet habe:
pycco Dokumentation parallel zum Code (für kleine Details vermutlich spannend).
towardsdatascience.com wenn man wirklich ins Detail gehen möchte.
Sphinx ist mit autodoc hervorragend geeignet um schnell und einfach eine hilfreiche Dokumentation aufzubauen.
Style Guide: pythonhosted.org/an_example_pypi_project/sphinx.html
Im Moment nutze ich den reStructured Style zum kommentieren. Aber vielleicht wechsel ich irgendwann.
Auf datacamp.com gibt es eine nette Übersicht der verschiedenen Arten Dokumentation zu formatieren.
Die Einbindung von Packages als Git Submodules die auch eigenständig funktionieren sollen scheint in Python nicht ganz trivial zu sein.
Das Problem ist, dass der Pfad zu anderen Dateien im eigenständigen Package und im eingebunden Package ein anderer ist.
Hier wurde argumentiert, warum Git Submodules generell keine gute Idee sind.
Für mich persönlich stellen sie aber einen guten ersten Schritt zum eigenständigen Package dar.
Eine Möglichkeit sie zu verwenden ist die entsprechenden Submodules in den Python Pfad aufzunehmen.