aggregateByKey

Класс: matlab.compiler.mlspark.RDD
Пакет: matlab.compiler.mlspark

Агрегируйте значения каждой клавиши, используя заданные функции объединения и нейтральное «нулевое значение»

Синтаксис

result = aggregateByKey(obj,zeroValue,seqFunc,combFunc,numPartitions)

Описание

result = aggregateByKey(obj,zeroValue,seqFunc,combFunc,numPartitions) агрегирует значения каждой клавиши, используя заданные функции комбинирования, заданные seqFunc и combFunc, и нейтральное «нулевое значение», заданное zeroValue. Входной параметр numPartitions опционально.

Входные параметры

расширить все

RDD входа, заданный как RDD объект.

Нейтральное «нулевое значение», заданное как массив ячеек с числами.

Типы данных: cell

Функция, которая агрегирует значения каждой клавиши, заданные как указатель на функцию.

Типы данных: function_handle

Функция для агрегирования результатов seqFunc, заданный как указатель на функцию.

Типы данных: function_handle

Количество создаваемых разделов, заданное как скалярное значение. Этот аргумент необязателен.

Типы данных: double

Выходные аргументы

расширить все

RDD, содержащий элементы, агрегированные по ключу, возвращенные как RDD объект.

Примеры

расширить все

%% Connect to Spark
sparkProp = containers.Map({'spark.executor.cores'}, {'1'});
conf = matlab.compiler.mlspark.SparkConf('AppName','myApp', ...
                        'Master','local[1]','SparkProperties',sparkProp);
sc = matlab.compiler.mlspark.SparkContext(conf);

%% aggregateByKey
x = sc.parallelize({'a','b','c','d'},4);
y = x.map(@(x)({x,1}));
z = y.aggregateByKey(10,@(x,y)(x+y),@(x,y)(x+y));
viewRes = z.collect()  % { {'d',11},{'a',11},{'b',11},{'c',11}}
Введенный в R2016b
Для просмотра документации необходимо авторизоваться на сайте