2017-05-11 2 views
3

私はSparkでデータセットを学習しようとしています。私が理解できないことの1つはKeyValueGroupedDatasetを表示する方法です。showは機能しません。また、KeyValuGroupedDataSetmapに相当するものは何ですか?誰かがいくつかの例を挙げたら、私は感謝します。SparkでKeyValueGroupedDatasetを表示するには?

+0

再現可能な例を表示できますか? SOはチュートリアルサイトではありません。 – mtoto

答えて

4

私は、herehereの例から考えました。私は以下に書いた簡単な例を示します。

val x = Seq(("a", 36), ("b", 33), ("c", 40), ("a", 38), ("c", 39)).toDS 
x: org.apache.spark.sql.Dataset[(String, Int)] = [_1: string, _2: int] 

val g = x.groupByKey(_._1) 
g: org.apache.spark.sql.KeyValueGroupedDataset[String,(String, Int)] = ... 

val z = g.mapGroups{case(k, iter) => (k, iter.map(x => x._2).toArray)} 
z: org.apache.spark.sql.Dataset[(String, Array[Int])] = [_1: string, _2: array<int>] 

z.show 
+---+--------+ 
| _1|  _2| 
+---+--------+ 
| c|[40, 39]| 
| b| [33]| 
| a|[36, 38]| 
+---+--------+ 
関連する問題