Hej Leute,

Ihr seid sicher schon darüber gestolpert, dass Python und R die Programmiersprachen sind, die ein Data Scientist können sollte. Beides sind Skriptsprachen, d.h. man schreibt ein Skript, dass dann Zeile für Zeile ausgeführt wird. Das Skript ist eine einfache Textdatei.

 

Aber wie anfangen? Für R ist es ziemlich einfach, die neuesten Versionen von R und RStudio herunterladen, installieren und schon kann man loslegen.

 

Python 2 vs. Python 3

Für Python ist die Sache ein bisschen komplexer. Zuerst mal gibt es zwei Version, Python 2 und Python 3, die sich leider auch in der Syntax unterscheiden. Höher ist besser, also empfehle ich Euch, die 3er-Version zu nutzen. Diese ist sicherlich zukunftsfähiger, auch wenn die 2er-Version noch verbreitet im Einsatz ist.

 

Python IDE – Die Entwickler-Oberfläche

Es stellt sich die Frage, welche IDE (Integrated Development Environment = integrierte Entwicklungsumgebung) für Python geeignet ist. Theoretisch braucht man natürlich keine, denn wie oben geschrieben ist ein Python-Skript nur eine Textdatei, d.h. ein einfacher Texteditor würde genügen. Das ist natürlich nicht sonderlich komfortabel.

 

Exkurs: Was ist eine IDE?

Grundsätzlich ist eine IDE eine Software, die die Programmierung erleichtert. So besteht sie meist aus einem guten Texteditor mit Syntax-Highlight, häufig auch Auto-Vervollständigung, Versionskontrolle-Interface, etc. Für R ist der DeFacto-Standard RStudio.

 

Aber zurück zur IDE für Python. Und da sieht es unübersichtlich aus. Genauer gesagt gibt es wirklich viele, aber so einen Gold-Standard  gibt es meiner Meinung nach nicht. Im Python Wiki gibt es eine Liste mit IDEs für alle Plattformen. Hier eine kleine Auswahl, bei weitem nicht vollständig oder objektiv. Ich empfehle für den Anfang die Anaconda-Distribution, welche Spyder und Jupyter enthält.

 

  • WingIDE (Pro Version kostet 245$, abgespeckte Free-Version verfügbar)
  • Thonny – kleiner, einfacher Editor,
  • Spyder – Eigentlich ziemlich gut, aktuell ist die Fortsetzung wegen fehlender Finanzierung von Apache unklar. Spyder ist in Anaconda enthalten.
  • Kommodo – eine IDE für mehrere Programmiersprachen, kostet aber 150$
  • PyCharm – professionelle IDE, kostet 90$/Jahr, es gibt aber eine abgespeckte, kostenlose community-Edition
  • Eclipse mit PyDev – wie Kommodo ist Eclipse eine IDE für mehrere Programmiersprachen, aber völlig kostenlos. Eclipse basiert auf Java und braucht daher ganz ordentlich Resourcen. Mächtig, aber ein bisschen träge
  • Jupyter Notebook – keine echte IDE, sondern eine Web-Applikation, mit der man Dokumente erstellen kann, die Python-Code, formatierten Text und Grafiken enthalten. Ziemlich cool, nur nicht so nutzerfreundlich. Funktioniert übrigens auch mit einem R-Kernel. Jupyter ist in Anaconda enthalten.

 

Anaconda – noch ne Schlange

Anaconda ist ein open-source Environment- und Paket-Manager. Ok, aber was heißt das jetzt genau? Es ist ein bisschen so wie Red Hat für Linux. Anaconda ist eine Zusammenstellung von nützlichen Tools, um Python zu nutzen.

  • Python
  • viele Python libraries, die man für Data Science braucht
  • conda – der Paket-Manager
  • Spyder und Jupyter

Insbesondere conda ist super nützlich, denn es erlaubt es, verschiedene Environments zu erstellen und benötigte Pakete und deren Abhängigkeiten (inkl. welche Versionen von welchem Paket) zu installieren. Immer noch keinen Plan? Ihr fragt Euch, warum man verschiedene Environments braucht? Ok, stellt Euch vor, wir haben ein Python-Skript für TensorFlow 1.0 (Neuronale Netze) geschrieben und wollen es jetzt in der neuen TensorFlow-Version testen. Dann können wir einfach ein zweites Environment mit der neuen Version erzeugen ohne die alte zu überschreiben. Gut, oder?

 

Die Installation von Anaconda ist ziemlich simpel, einfach herunterladen und installieren. Gegebenenfalls noch die PATH-Variable anpassen. Fertig! Hier verlinke ich Euch noch einen Anaconda Starter Guide und ein conda Cheatsheet

 

Viel Spaß in der Schlangengrube,

Euer Holger