【发布时间】:2017-10-11 10:36:04
【问题描述】:
我想在 Spark 2.1 中使用 Spark MLlib 中的 FP-Growth。
我的数据只有两列 item_group 和 item。
我尝试了以下方法,但它不起作用:
sc = SparkSession.builder.appName("Assoziationsanalyse").getOrCreate()
hiveCtx = SQLContext(sc)
input = hiveCtx.sql("""select * from bosch.input_view""").
groupBy("item_group").
agg(collect_list("item")).
alias("items").
rdd.
map(lambda x : x.items)
model = FPGrowth.train(input, minSupport=0.2, numPartitions=10)
【问题讨论】:
-
鉴于您的数据集,
item_group似乎是独一无二的。那是对的吗?在这种特殊情况下,groupBy+collect_list将是创建 FPGrowth 期望的数组列的简单转换。 -
item_group代表一个购物车,在上表中巧合的是每个item_group只出现一次。 -
您能粘贴一个更有洞察力的数据集以供将来参考吗?请粘贴数据集(不是截图)。
标签: apache-spark pyspark apache-spark-mllib apache-spark-2.0