numpy.loadtxt erzeugt ValueError: could not convert string to float?
Hi,
ich muss CSV Dateien mit Python bearbeiten. Um aus der CSV Datei ein Array zu machen benutzte ich numpy.loadtxt. Wenn ich das Programm allerdings ausführe zeigt er folgenden Fehler an:
ValueError: could not convert string to float.
Ich habe online häufiger gelesen, dass das daran liegen kann wenn eine Zelle der Tabelle leer ist und dadurch in der CSV Datei zwei Semikolons hintereinander sind: ';;'
Gibt es einen weg das zu umgehen?
Vielen Dank schonmal im Vorraus.
TheC00n4
1 Antwort
Wenn Du auf Float casten willst, dann muß natürlich auch der String die Anforderungen an einen Float erfüllen - das sollte klar sein.
Würdest Du einen kurzen Blick in die Doku werfen, so würdest Du sehen, daß die Funktion einen Parameter converters unterstützt.
Hier kannst Du eien Vorerarbeitung vornehmen, z.B. indem Du für Spalten in denen auch leere Felder auftreten können ein Kontrukt wie:
lambda s: float(s.strip() or 0)
nutzt.