0
にリスト内のキーと値のペアの値を合計するにはどうすればリスト、私は、各レコードのリスト内の各キーの値を追加する必要がはPySpark
rdd = [('12583', [('536370', 3.75), ('536370', 3.75), ('536370', 3.75)]),
('17850', [('536365', 2.55), ('536365', 3.39), ('536365', 2.75)]),
('13047', [('536367', 1.69), ('536367', 2.1), ('536368', 4.95), ('536368', 4.95), ('536369', 5.95)])]
内キー値とRDDを持っています。私は腹を立てようとしましたが、mapValuesがリストにその追加を許可しないので、それは通りませんでした。
newRDD = rdd.groupByKey().map(lambda x : (x[0],list(x[1].mapValues(sum))))
私の期待どおりの結果あなたはcollections.defaultdict
を使用して、リストの集計関数を定義することができるように怒鳴る
[('12583', ('536370', 11.25)),
('17850', ('536365', 8.39)),
('13047', ('536367', 3.79),('536368', 9.9), ('536368', 10.9))]