我有一個關於用Scala過濾FrequetItemset
的初學者問題。如何過濾FrequentItemset?
代碼首先書:
import org.apache.spark.mllib.fpm.FPGrowth
import org.apache.spark.rdd.RDD
val transactions: RDD[Array[String]] = data.map(s => s.trim.split(','))
val fpg = new FPGrowth()
.setMinSupport(0.04)
.setNumPartitions(10)
val model = fpg.run(transactions)
現在我想篩選出的項目與'aaa'
開始,例如"aaa_ccc"
,從結果
我想:
val filtered_result = model.freqItemsets.itemset.filter{ item => startwith("aaa")}
and
val filtered_result = model.freqItemsets.filter(itemset.items => startwith("aaa"))
和
val filtered_result = model.freqItemsets.filter(itemset => items.startwith("aaa"))
我做了什麼錯?
很好的解釋。謝謝 !我是scala新手,有時代碼包含句點,方法之間有時間空間。爲什麼? – Toren
可以說你有一個包含foo方法的類的實例。 看起來像這樣: 'class A {{{{def foo(bar:A)= ??? }' 然後可以使用方法爲: 'VAL A =新的A VAL B =新的A 一個Foo b a.foo(B)' 編輯:在Scala中一切是一個函數,連+運算符用於累加兩個Ints,例如1 + 2.您可以將其寫爲:1。+(2)' –