Мне нужно подсчитать время, когда в каждом столбце встречается пример «2».Spark Scala суммирует элементы столбца набора данных?
Мой набор данных имеет такую структуру:
1 1 2 0 0 0 2
0 2 0 1 1 1 1
1 2 1 0 2 2 2
0 0 0 0 1 1 2
Я импортирован файл:
val ip = sc.textFile("/home/../data-scala.txt").map(line => line.split(" "))
Как я могу суммировать значение, равное "2" в каждом столбце? я бы ожидать, чтобы иметь результат массив элементов как
[0,2,1,0,1,1,3]
это как вы хотите получить ответ [0, 2, 1,0,1,1,3]? –
Вы можете [транспонировать] (http://stackoverflow.com/questions/29390717/how-to-transpose-an-rdd-in-spark) свой RDD, а затем подсчитать '' '' '' '' 's' .count (_ == "2")). –
@PeterNeyens Транспонирование дорогое, не всегда выполнимое, и в этом нет необходимости. – zero323