How to

Sie befinden sich hier: :/Tag:How to
  • weniger ist besser

Wie man große Dateien auch auf einem kleinen Notebook bearbeitet

Wer sich mit Data Analytics beschäftigt, hat hin und wieder mit sehr großen Dateien zu kämpfen. Diese entstehen schlichtweg heutzutage in vielen Wirtschaftszweigen. Ob Industrie 4.0 oder M2M Kommunikation, überall werden Zahlenkolonnen gespeichert und dann auch hoffentlich irgendwann ausgewertet.

Dabei überschlagen sich die Consultants im Jahrestakt mit neuen Buzzworts zum Thema. Vor einigen Jahren hieß es  noch ‚Cloud‘, aktuell wird über ‚Big Data‘ geschrieben und bald kann man von ‚Smart Data‘ lesen.

Dabei gilt:

Vielleicht liegt es ja daran, dass viele PowerPoint Profis nur Excel auf dem Laptop installiert haben und das ein oder andere mal die nachfolgende Meldung gelesen haben:

Die Reaktion von Excel, wenn man versucht eine 1GB große Daten-Datei in eine Arbeitsmappe zu laden. Ist aber noch kein Big Data Problem. Wer selbst probieren möchte:

Excel stößt mit dieser Datei schon an seine Grenzen. Enthalten sind beispielhafte Daten, wie sie z.B. von unserem CarPC gesendet werden.
UUID, Latitude, Longitude, Value
Und von diesen Datenzeilen eben sehr viele. Versuchen wir nun diese Datei zu öffnen, um damit Berechnungen auszuführen, zu filtern oder Diagramme zu erstellen.
Effizientes Einlesen von großen CSV Dateien mit Python
Mit Python hat man mehrere Möglichkeiten eine Textdatei einzulesen. Wir konzentrieren uns auf 3 typische Module:

das Python CSV Modul, welches der Standard ist
Python Pandas, welches alles vereinfacht
Python Blaze

Schauen wir mal. Alle nachfolgenden Zeitangaben sind natürlich vom System abhängig. Die Zeiten sind auf einem MacBook Pro, 2.5GHz Intel Core i5, 8GB 1600MHz DDR3-RAM, SSD Festplatte mit IPython in der Anaconda Distribution und nur 1x ermittelt.

Einlesen einer 1GB Datei mit Python CSV Modul

Das Lesen der 1GB großen Datei dauert knapp 35s.
Einlesen einer 1GB Datei mit Python Pandas

Das Lesen der 1GB großen Datei dauert knapp 25s. Das ist schnell! Der Entwickler von Pandas, Wes McKinney schreibt
pandas.read_csv from pandas 0.5.0 onward […]

By |01/2015|Categories: DataLab|Tags: , , , , , , |0 Comments