メインコンテンツ

foldByKey

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

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

構文

result = foldByKey(obj,zeroValue,func,numPartitions)

説明

result = foldByKey(obj,zeroValue,func,numPartitions) は、結合関数 funczeroValue で表されるニュートラルな "ゼロ値" を使用して、obj の各キーの値をマージします。入力引数 numPartitions は、結果の RDD 内に作成するパーティションの数を指定します。

入力引数

すべて展開する

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

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

データ型: cell

各キーの値を畳み込む関数。関数ハンドルとして指定します。

データ型: 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);

%% foldByKey
x = sc.parallelize({ {'a',1}, {'b',1}, {'a',1} });
y = x.foldByKey(5, @(x,y)(x+y));
viewRes = y.collect() % {{'a',7},{'b',6}}

バージョン履歴

R2016b で導入