Re: [问题] arules package

楼主: sulaxd (SulaXD)   2016-03-08 13:51:21
以下给你参考:
# 加载套件
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}这样的格式,所以我不知道哪里出了错
: 请问有人做过完整的关联性分析吗?
: 会用货号的原因是,商品是很长而且有中文的格式反而会更难分析
作者: clansoda (小笨)   2016-03-08 14:32:00
请问您知道transaction的转换到底应该是什么格式吗?我用了好几种型态的格式都会出现下面这串字no method or default for coercing “list” totransaction
楼主: sulaxd (SulaXD)   2016-03-08 15:48:00
请查询说明文件 ?transactions 范例很清楚
作者: clansoda (小笨)   2016-03-09 10:27:00
感谢你,我在中间的语法上有些问题可以私下请教您吗?
楼主: sulaxd (SulaXD)   2016-03-09 10:41:00
可以

Links booklink

Contact Us: admin [ a t ] ucptt.com