以下给你参考:
# 加载套件
library(magrittr)
library(plyr)
library(arules)
# 读入资料,因资料来源编码为big5,加入参数fileEncoding
dd <- read.csv("~/Downloads/dd.csv",stringsAsFactors = F, fileEncoding = "big5
")
# (optional)将资料转为list,并把每笔交易中的空值及重复项目移除
dd <- dlply(dd, "X", function(u){
unlist(u[-1]) %>% .[.!=""] %>% unique
})
# 将资料转为transactions物件并进行apriori算法
trans <- as(dd, "transactions")
rules <- apriori(trans, parameter = list(support=0.001, confidence=0.001,minle
n=2))
inspect(rules)
※ 引述《clansoda (小笨)》之铭言:
: 各位好,首先我先附上资料https://goo.gl/4ds2H4
: 这个资料是购买资料的货号,我想用它来做association analysis
: 如果我先将资料直接用rules<-apriori(dd,parameter=list(supp=0.01,conf=0.8))
: 接着inspect(rules),可是我这样只能得到很少的rules而且都是item1->item5
: 类似这样的空集合,也就是里面没有商品当然也就没办法分析,想请问如何消除这样的
: rules,接着用另外种方式是直接从外面读进来而且变成transaction的模式
: read.transaction(dd,sep=","),这样确实会transaction被读进来但是这样做完aprio
ri
: 后不会是正常的格式像item1{kites}->item3{ball}类似这样的模式
: 反而会是{ball,kites,lollipop}这样的格式,所以我不知道哪里出了错
: 请问有人做过完整的关联性分析吗?
: 会用货号的原因是,商品是很长而且有中文的格式反而会更难分析