2016-05-08 12 views
1

スパークRDDの列の値を直接合計する効率的な方法はありますか?私はこれのためだけにSQL DataFrameを作成したくありません。スパークRDD:SQL DataFrameを作成せずに1つの列を合計

私は、各LabeledPointが疎ベクトル表現を使用するLabeledPointのRDDを持っています。私が最初の特徴の値の合計に興味があるとします。
次のコードは、私のために動作しません:

//lp_RDD is RDD[LabeledPoint] 
var total = 0.0 
for(x <- lp_RDD){ 
    total += x.features(0) 
} 

totalAmtの値を、このループはまだ0

答えて

2

後に何をしたい、その後RDD.mapを使用してfeatureベクターから最初の要素を抽出することで、 DoubleRDDFunctions.sumを使用してそれらを合計します。

val sum: Double = rdd.map(_.features(0)).sum() 
関連する問題