メインコンテンツ

aggregateByKey

クラス: matlab.compiler.mlspark.RDD
名前空間: matlab.compiler.mlspark

特定の結合関数とニュートラルな "ゼロ値" を使用して、各キーの値を集計

構文

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

説明

result = aggregateByKey(obj,zeroValue,seqFunc,combFunc,numPartitions) は、seqFunccombFunc で指定された特定の結合関数と、zeroValue で指定されたニュートラルな "ゼロ値" を使用して、各キーの値を集計します。入力引数 numPartitions はオプションです。

入力引数

すべて展開する

入力 RDD。RDD オブジェクトとして指定します。

ニュートラルな “ゼロ値”。数値の cell 配列として指定します。

データ型: 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 で導入