次のように保存された Double のリストを破棄します。
JavaRDD<Double> myDoubles
このリストの平均を計算したいと思います。ドキュメントによると、:
MLlib のメソッドはすべて Java に適した型を使用しているため、Scala で行うのと同じ方法でインポートして呼び出すことができます。唯一の注意点は、メソッドが Scala RDD オブジェクトを受け取るのに対して、Spark Java API は別の JavaRDD クラスを使用することです。JavaRDD オブジェクトで .rdd() を呼び出すことにより、Java RDD を Scala のものに変換できます。
同じページに、次のコードが表示されます。
val MSE = valuesAndPreds.map{case(v, p) => math.pow((v - p), 2)}.mean()
私の理解では、これは (型に関して) と同等です。
Double MSE = RDD<Double>.mean()
結果として、私はJavaRDD
このように私の平均を計算しようとしました:
myDoubles.rdd().mean()
ただし、機能せず、次のエラーが表示されますThe method mean() is undefined for the type RDD<Double>
。また、 RDD scala documentationでこの関数についての言及も見つかりませんでした。. これは私の側の理解が悪いためですか、それとも何か別のことですか?