2017-11-29 3 views
-3

meine Funke RDD sieht so etwas wie diesesValueerror: konnte nicht Zeichenfolge konvertieren in Pyspark zu schweben

totalDistance=flightsParsed.map(lambda x:x.distance) 
totalDistance.take(5) 


[1979.0, 640.0, 1947.0, 1590.0, 874.0] 

Aber wenn ich auf sie reduzieren betreibe ich Fehler erhalten, wie unten erwähnt

totalDistance=flightsParsed.map(lambda x:x.distance).reduce(lambda y,z:y+z) 

ValueError: could not convert string to float:

Bitte helfen Sie.

+2

[Es] (https://stackoverflow.com/questions/44950532/pyspark-valueerror-konnte-nicht-konvertieren-string-zu-float-invalid-literal-for-fl) [sind] (https://stackoverflow.com/questions/32098641/valueerror-could-not-convert-string (float) [mehrere] (https://stackoverflow.com/questions/36113328/python-pyspark-error-valueerror-could-nicht-convert-string-to-float-17) ähnliche Fragen. Ich würde vorschlagen, diese zuerst zu lesen und darauf zu achten, dass Ihre Daten reinkommen, oder vor der Arithmetik als Fließkommazahl ausgegeben werden. – Zooby

Antwort

0

Haben Sie versucht:

totalDistance=flightsParsed.map(lambda x: int(x.distance or 0)) 

oder

totalDistance=flightsParsed.map(lambda x: float(x.distance or 0)) 

Sie haben fehlende oder inkonsistente Daten innerhalb flightsParsed

Verwandte Themen