Я супер новичок в 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]
для создания вывода, показанного выше.
Заранее спасибо.