0
のHy、バスケット分析
I欲しい"頻出アイテム"
import org.apache.spark.mllib.fpm.AssociationRules
import org.apache.spark.mllib.fpm.FPGrowth.FreqItemset
val freqItemsets = transactions
.flatMap(xs =>
(xs.combinations(1) ++ xs.combinations(2)).map(x => (x.toList, 1L))
)
.reduceByKey(_ + _)
.map{case (xs, cnt) => new FreqItemset(xs.toArray, cnt)}
val ar = new AssociationRules()
.setMinConfidence(0.4)
val results = ar.run(freqItemsets)
最後に私が今まで
results.collect().foreach { rule =>
println("[" + rule.antecedent.mkString(",")
+ "=>"
+ rule.consequent.mkString(",") + "]," + rule.confidence)
}
すべて[OK]を「ルール」を取得するために相関ルールを使用していますが、次の私は、各トランザクションのための勧告を与えたい...それを行うための簡単な方法はありますか? = LHS:私のScalaは非常に悪いですので、RIで
はあなたのルールを生成した後、あなたの時間
私が実際にあなたが尋ねていることはわかりません。 – eliasah
例:バスケット1(「Tuna」、「Banana」、「Strawberry」)の場合、このクライアントにはどのような製品をおすすめしますか? – Kardu