【发布时间】:2019-05-03 14:29:31
【问题描述】:
我对 pyspark 和 RDD 非常陌生。抱歉,如果这个问题非常初级。
我已使用以下代码对数据进行映射和清理:
delay = datasplit.map(lambda x: ((x[33], x[8], x[9]))).filter(lambda x: x[0]!= u'0.00').filter(lambda x: x[0]!= '')
但现在我需要以某种方式转换为以下输出:
(124, u'"OO""N908SW"')
(432, u'"DL""N810NW"')
其中第一个是上面提到的x[33] 的总和,当按 x[8] 和 x[9] 的组合分组时
我已完成映射并获得以下输出(接近)
lines = delay.map(lambda x: (float(x[0]), [x[1], x[2]]))
输出:
[(-10.0, [u'OO', u'N908SW']),(62, [u'DL', u'N810NW]), (-6.0, [u'WN', w'N7811F'])]
但我不知道如何减少或组合 x[1] 和 x[2] 以创建上面显示的输出。
提前致谢。
【问题讨论】: