我有一个包含五个元组的rdd,如下所示
return [word_val+'&'+f_val+'&'+N_val+'&'+n_val+'&'+str(1)]
我想将这些值映射到计算结果,我希望映射的工作方式如下:
reducer_3 = add_m.map(lambda word: (word[0],word[1],word[2],word[3],1)).reduceByKey(lambda word[0],1: word[0]+1)
reducer_3应返回包含以下内容的rdd:
word[0] & summation_of_1's & word[1] & word[2] & word[3]
答案 0 :(得分:0)
您需要在reduceByKey之前映射到一对元组,例如:
reducer_3 = add_m.map(lambda word: ((word[0],word[1],word[2],word[3]),1)).reduceByKey(lambda x,y: x+y)
这将返回一组4元组及其计数。您展示的原始代码似乎缺少了地图步骤中4元组周围的额外数据。 你的问题并没有完全清楚你想要实现的目标,但希望上面的例子能够帮助......