2016-05-24 15 views
0

私はいくつかの基本的なスパークアプリケーションを実行しようとしています。Sparkの別のアクションでアクションを適用できますか?

別のアクションでアクションを適用できますか?

または

アクションのみ変身RDDに適用することができますか?

val numbersRDD = sc.parallelize(Array(1,2,3,4,5)); 
    val topnumbersRDD = numbersRDD.take(2) 

scala> topnumbersRDD.count 
<console>:17: error: missing arguments for method count in trait    TraversableOnce; 
    follow this method with `_' if you want to treat it as a partially  applied function 
      topnumbersRDD.count 
         ^

私はなぜこれを上記のエラーにしているのか知りたいと思います。

また、最初の2つの数字の数を調べたい場合はどうすればいいですか?2として出力が必要です。

答えて

0

アクションはRDDおよびDataFrameに適用できます。takeメソッドは配列を返します。配列の長さまたはサイズを使用して要素を数えます。

あなたが条件で件のデータを選択したい場合は、あなたがfilterを使用することができ、それは新しいRDD

+0

を返す[OK]を..私はnumbersRDDから最初の2つの要素を取り、その上のいくつかのより多くの変換を適用したいしたいと思いますが。それ、どうやったら出来るの ?私はnumbersRDD.take(2).filterを試しました。それは私にエラーを投げます –

+0

フィルターはRDDのようにする必要があります:numbersRDD.filter –

+0

試してみることができる配列の長さが必要ならnumbersRDD.take(2).length –

関連する問題