2017-03-02 6 views
0

RDD内のリスト内のすべての要素をフロートに変換しようとしています。これは私がやったことです: RDD.map(lambda line:line.encode("ascii", "ignore").strip().split()).map(convertToFloat)と、このようなルックスをfloat型に変換します。RDD内の要素のリストをfloat型の点群に変換する

def convertToFloat(lines): 
     returnedLine = []  
     for x in lines: 
      returnedLine.append(float(x))   
     return returnedLine 

しかし、これはあまりにも遅い実行されます。地図(convertToFloat)部分をラムダ関数に置き換える方法はありますか?

convertToFloat = lambda lines: [float(x) for x in lines] 

が、速度ゲインがないから、リスト内包から来ている:ラムダではなく、むしろリスト内包

def convertToFloat(lines): 
    returnedLine = [float(x) for x in lines] 

とあなた本当にがトップにラムダをしたい場合に使用していない

答えて

0

ラムダ。

+0

ありがとうございます!リストの理解は少し速く動作します –

+0

あなたがそれがあなたを助けるものだと思えば、答えを受け入れてください。 http://stackoverflow.com/help/someone-answers –

+0

ありがとうJean! –

関連する問題