欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

R初学——Apriori算法笔记

程序员文章站 2022-07-14 20:58:41
...

1、Merge函数

merge(x, y, by = intersect(names(x), names(y)),

      by.x = by, by.y = by, all = FALSE, all.x = all, all.y = all,

      sort = TRUE, suffixes = c(".x",".y"),

      incomparables = NULL, ...)

merge函数参数的说明:

x,y:用于合并的两个数据框

by,by.x,by.y:指定依据哪些行合并数据框,默认值为相同列名的列.

all,all.x,all.y:指定x和y的行是否应该全在输出文件.

sort:by指定的列是否要排序.

suffixes:指定除by外相同列名的后缀.

incomparables:指定by中哪些单元不进行合并.

R初学——Apriori算法笔记(图为其他博客上摘录下来的)

 

2、subset函数

%in%——精确匹配  items %in% c("A","B")

%pin%——部分匹配

%ain%——完全匹配

示例:

rules.subset = subset(RulesRep,subset = lhs%in%"全脂牛奶"&lift>=1.5)
inspect(rules.subset)

R初学——Apriori算法笔记

 

 

3、sort()、rank()、order()
sort()是对向量从小到大排序
rank()返回的是对向量中每个数值对应的秩
order()返回的值表示位置,依次对应的是向量的最小值、次小值、第三小值……最大值
 

示例:

data=c(5,6,7,2,4,9)
sort(data)
rank(data)
order(data)

iris<-data.frame(iris)
iris[order(-iris$Sepal.Length),]

R初学——Apriori算法笔记

 

4、read.transactions中format和cols参数说明

format=c("basket", "single")——用于注明源数据的格式。

  • 如果源数据每行内容就是一条交易购买的商品列表(类似于一行就是一个购物篮)那么使用basket;
  • 如果每行内容是交易号+单个商品,那么使用single。

cols=c( ) ——对于single格式,需要指定cols,二元向量(数字或字符串)。

如果是字符串,那么文件的第一行是表头(即列名)。第一个元素是交易号的字段名,第二个元素是商品编号的字段名。如果是数字,那么无需表头。对于basket,一般设置为NULL,缺省也是NULL,所以不用指定。

 

5、inspect、quality使用

inspect( ):查看关联规则

R初学——Apriori算法笔记
——按提升度排序规则

rules_data<-inspect(sort(RulesRep, by = "lift"))

R初学——Apriori算法笔记
quality():提取规则中支持度、置信度、提升度

R初学——Apriori算法笔记

6、itemFrequencyPlot作图

提取TransRep关联规则中支持度大于0.07占比前10的item的项

itemFrequencyPlot(TransRep1,topN=10,horiz=T,support = 0.07)

horiz=T                                                                         

R初学——Apriori算法笔记  

 horiz=F

R初学——Apriori算法笔记

相关标签: RStudio