Я передаю весь свой код на scala, и у меня была функция в pySpark, что я мало знаю, как перевести на scala. Может ли кто-нибудь помочь и дать объяснение? PySpark выглядит следующим образом:Spark AggregateByKey От pySpark до Scala
.aggregateByKey((0.0, 0.0, 0.0),
lambda (sum, sum2, count), value: (sum + value, sum2 + value**2, count+1.0),
lambda (suma, sum2a, counta), (sumb, sum2b, countb): (suma + sumb, sum2a + sum2b, counta + countb))
Edit: То, что я до сих пор:
val dataSusRDD = numFilterRDD.aggregateByKey((0,0,0), (sum, sum2, count) =>
Но то, что я имею трудности с пониманием, как вы пишете это в Скале из группы функции затем назначают значение в группу действий (сумма + значение и т. д.). во вторую совокупность всех функций с соответствующим синтаксисом. Его трудно согласовать мои проблемы в этом сценарии. Тем более, что я не понимаю scala и когда использовать скобки, vs круглые скобки, vs, comma
SO is't действительно сервис перевода кода. Где вы застряли? Какие биты вы не понимаете? –
Добавлено редактирование, объясняющее мои мысли, – theMadKing
В ответе, который я написал здесь, есть пример Scala aggregateByKey: http://stackoverflow.com/a/29953122/21755. Начиная с написания не анонимных функций, возможно, кривая обучения будет немного менее крутой. –