2017-06-03 3 views
1

私はspark/pythonでのプログラミングのコンテキストで、これは合理的に基本的な操作だと考えています。私は、次のような見えテキストファイルがあります。文字列のRDDから二重のリストのRDDへのPysparkマップ

mydata.txt 
12 34 2.3 15 
23 11 1.5 9 
33 18 4.5 99 

をし、私はテキストファイルを読み込むには、次のコードを使用します。

data = sc.textFile("mydata.txt") 

と、これは文字列のRDDとしてファイルに読み込みます。しかし、私は値を分離し、すべてを浮動小数点に変換したいと思っています。そこで、私は上記の行を次のように変更します:

data = sc.textFile("matrix1.txt").map(lambda line: line.split(' ')) 

これは、データをスペースで正しく分割します。しかし私はマップ関数を思いついて浮動小数点数に変換するのに苦労しています。

.map(lambda line: float(line)) 

しかし、これは機能しませんでした。どんな助けにも感謝! ありがとう!

EDIT - データの列数はわかりません。 .map(lambda line:float(line [0])、float(line [1])、float(line [2])、float(line [3])の行に沿ったものは特に役に立ちません。

答えて

0

Nevermind、got it。

.map(lambda line: [float(x) for x in line]) 
関連する問題