构建“;交易”;基于arules和apriori的SparkR关联规则挖掘类

构建“;交易”;基于arules和apriori的SparkR关联规则挖掘类,r,apache-spark,sparkr,apriori,arules,R,Apache Spark,Sparkr,Apriori,Arules,我正在使用SparkR并试图将“SparkDataFrame”转换为“transactions”,以便挖掘项目/产品的关联 我在这个链接上找到了一个类似的例子,但这只是在使用R data.frame时。我目前拥有这种格式的数据 CUSTOMER_KEY_h PRODUCT_CODE 1 SAVE 1 CHEQ 1 LOAN 1 LOAN 1 CARD 1 SAVE 2 CHEQ 2 LOAN

我正在使用SparkR并试图将“SparkDataFrame”转换为“transactions”,以便挖掘项目/产品的关联

我在这个链接上找到了一个类似的例子,但这只是在使用R data.frame时。我目前拥有这种格式的数据

CUSTOMER_KEY_h PRODUCT_CODE

    1   SAVE
    1   CHEQ
    1   LOAN
    1   LOAN
    1   CARD
    1   SAVE
    2   CHEQ
    2   LOAN
    2   CTSAV
    2   SAVE
    2   CHEQ
    2   SAVE
    2   CARD
    2   CARD
    3   LOAN
    3   CTSAV
    4   SAVE
    5   CHEQ
    5   SAVE
    5   CARD
    5   LOAN
    5   CARD
    6   CHEQ
    6   CHEQ
希望以这样的方式结束

CUSTOMER_KEY_h  PRODUCT_CODE
    1          {SAVE, CHEQ, LOAN, LOAN , CARD, SAVE}
    2          {CHEQ, LOAN, CTSAV, SAVE, CHEQ, SAVE, CARD, CARD}
    3          {LOAN, CTSAV}
    4          {SAVE}
    5          {CHEQ, SAVE, CARD, LOAN, CARD}
    6          {CHEQ, CHEQ}
或者,如果我可以在SparkR中获得与此R脚本等效的代码
df2
arules
软件包与SparkR不兼容。如果您想探索Spark上的关联规则,应该使用它自己的实用程序。首先使用
collect\u set
组合记录:

库(magrittr)
df%
agg(别名(收集集合(列(“产品代码”),“项目”))
适合型号(请查看可用选项的完整列表):

fpgrowth
alias(collect_set(column("PRODUCT_CODE")), "items")
expr("collect_set(PRODUCT_CODE) AS items")