2016-07-20 1 views
0

の準値を見つけます3つの値</p> <pre><code>rdd = rdd.map(lambda x: (x['Id'],[float(x['value1']),int(x['value2'])])) </code></pre> <p>私が見つけ、VALUE1は私が私を知っている を最大化されている全体RDDを返したいとRDDをreduceByKeyとRDDの最大値を検索して、私が持っている別の変数

rddMax = rdd.map(lambda x: (x['Id'], int(x['value1']))).reduceByKey(max) 

を行い、その後、戻ってそれに参加するが、私はちょうどキーでグループ化された2の最大値を求め、これらの値に関連付けられている全体RDDを返す1つのクリーンな操作をしたいこと。

私はまた、どのような状況の下でのデータフレーム内のデータを置くために何の希望

おかげ

答えて

1

はこれを試してみてくださいませんか:

>>> rdd = rdd.map(lambda x: 
... (x['key'], (float(x['value1']), int(x['value2'])))) 
>>> rdd.reduceByKey(
... lambda (v11, v21), (v12,v22): (v11, v21) if v11 > v12 else (v12, v22)) 
+0

これは古典的なソリューションです。 – convolutionBoy

+0

私は元の質問に変更を加えたので、最初の声明なしで動作しますが、ありがとう – convolutionBoy

関連する問題