私のデータ=どのようにこの..sparkのScalaのコレクションのマップを作るために
aaaa|1000
bbb|1000
ccc|1000
aaaa|1000
aaaa|2000
aaaa|3000
aaaa|2000
aaaa|1000
bbb|2000
bbb|2000
ccc|1000
ccc|1000
ccc|2000
ccc|3000
ccc|4000
私は、各テキストラベルのため、各数値のための出現箇所の数をカウントしたい:
aaaa||1000||3||2000||2||3000||1
bbb||2000||2||1000||1
ccc||1000||3||4000||1||2000||1||3000||1
これは私ですコード
val UserShopRowData = inputData.map(s => (s.replace("|", " ").split(" "))).map(s => (s(0), s(1)))
val u1 = UserShopRowData.map(s=> (s, 1)).reduceByKey(_+_)
val u2 = u1.map(s => (s._1._1, s._1._2, s._2))
val u3 = u2.toLocalIterator.toList.sortBy(s => (s._1, s._3)).reverse
、これは私が取得していた結果である:
(ccc,1000,3)
(ccc,4000,1)
(ccc,2000,1)
(ccc,3000,1)
(bbb,2000,2)
(bbb,1000,1)
(aaaa,1000,3)
(aaaa,2000,2)
(aaaa,3000,1)
私に解決策やアドバイスをしてください。
は、私はあなたの質問を理解していない – byxor