1.下载Matrix和arules包

install.packages(c("Matrix","arules"))

2.载入引入Matrix和arules包

# 引入Matrix和arules包
library(Matrix)
library(arules)

3.读取数据

# 读入数据
dataset <- mysql_find(sql)

4.数据转换

# 将数据框转为矩阵
dataset2 <- as.matrix(dataset)
# 转换为交易流数据transactions
dataset2.class<-as(dataset2,"transactions")

5.调用apriori算法

rules<-apriori(dataset2.class,parameter=list(supp=0.7,conf=0.8,target="rules"))
# 指定前导为item1
rules<-apriori(dataset2.class,parameter=list(supp=supp,conf=conf,target="rules"),appearance= list(rhs="item1",default="lhs"))

6.将结果保存

# 写入
write.table(inspect(rules), file = paste("app/save/aprio/",filename,".txt",sep =""), col.names = F, row.names = F, quote=F)

封装AprioriHelper.R类

# 引入Matrix和arules库
library(Matrix)
library(arules) # 引入脚本文件
source('Helper/mysql_helper.R', encoding = 'UTF-8') # 构建aprio函数
aprio <- function(sql,supp,conf,filename){ # 读入数据
dataset <- mysql_find(sql)[,:] # 修改列名
names(dataset) <- c("item1", "item2", "item3", "item4", "item5", "item6", "item7", "item8", "item9", "item10", "item11", "item12", "item13", "item14", "item15") # 将数据框转为矩阵
dataset2 <- as.matrix(dataset) # 转换为交易流数据transactions
dataset2.class<-as(dataset2,"transactions") # 调用apriori算法
if(filename=="all"){
rules<-apriori(dataset2.class,parameter=list(supp=supp,conf=conf,target="rules"))
}else{
rules<-apriori(dataset2.class,parameter=list(supp=supp,conf=conf,target="rules"),appearance= list(rhs="item1",default="lhs"))
} # 写入
write.table(inspect(rules), file = paste("app/save/aprio/",filename,".txt",sep =""), col.names = F, row.names = F, quote=F) }

R语言中的Apriori关联规则的使用的更多相关文章

  1. 掌握R语言中的apply函数族(转)

    转自:http://blog.fens.me/r-apply/ 前言 刚开始接触R语言时,会听到各种的R语言使用技巧,其中最重要的一条就是不要用循环,效率特别低,要用向量计算代替循环计算. 那么,这是 ...

  2. R语言中的factor

    对于初学者来说,R语言中的factor有些难以理解.如果直译factor为“因子”,使得其更加难以理解.我倾向于不要翻译,就称其为factor,然后从几个例子中理解: <span style=& ...

  3. R语言中apply函数

    前言 刚开始接触R语言时,会听到各种的R语言使用技巧,其中最重要的一条就是不要用循环,效率特别低,要用向量计算代替循环计算. 那么,这是为什么呢?原因在于R的循环操作for和while,都是基于R语言 ...

  4. R语言中的MySQL操作

    R语言中,针对MySQL数据库的操作执行其实也有很多中方式.本人觉得,熟练掌握一种便可,下面主要就个人的学习使用情况,总结其中一种情况-----使用RMySQL操作数据库. 1.下载DBI和RMySQ ...

  5. R语言中 fitted()和predict()的区别

    fitted是拟合值,predict是预测值.模型是基于给定样本的值建立的,在这些给定样本上做预测就是拟合.在新样本上做预测就是预测. 你可以找一组数据试试,结果如何. fit<-lm(weig ...

  6. R语言中Fisher判别的使用方法

    最近编写了Fisher判别的相关代码时,需要与已有软件比照结果以确定自己代码的正确性,于是找到了安装方便且免费的R.这里把R中进行Fisher判别的方法记录下来. 1. 判别分析与Fisher判别 不 ...

  7. R 语言中 data table 的相关,内存高效的 增量式 data frame

    面对的是这样一个问题,不断读入一行一行数据,append到data frame上,如果用dataframe,  rbind() ,可以发现数据大的时候效率明显变低. 原因是 每次bind 都是一次重新 ...

  8. rugarch包与R语言中的garch族模型

    来源:http://www.dataguru.cn/article-794-1.html rugarch包是R中用来拟合和检验garch模型的一个包.该包最早在http://rgarch.r-forg ...

  9. 关于R语言中set.seed()

    在r中取sample时候,经常会有set.seed(某数),经常看见取值很大,其实这里无论括号里取值是多少,想要上下两次取值一样,都需要在每次取值前输入同样的set.seed(某数),才能保证两次取值 ...

随机推荐

  1. hdoj4864 Task (贪心)

    题目来源: 2014 Multi-University Training Contest 1--by FZU 题意:有N个机器和m个工作.机器和工作都有一个时间xi和价值yi,一个工作仅仅有满足xi和 ...

  2. Vmware linux 无法上网

    流程如下: 1)点击 VM->Settings Hardware选项卡下面 2)点击Network Adapter 设置如下图所示,首先我们在虚拟机中将网络配置设置成NAT, 3.进入Windo ...

  3. ERROR C3848:具有类型"const XXX" 的表达式会丢失一些 const-volatile 限定符以调用"YYY" with"ZZZ"

    今天看书,Thinking in c++ volume 2 "Adaptable function objects" 里面作者说: Suppose, for example, th ...

  4. imooc 生鲜超市笔记

    1.启动前端项目(Vue.js) cnpm run dev

  5. 实战c++中的vector系列--知道emplace_back为何优于push_back吗?

    上一篇博客说道vector中放入struct.我们先构造一个struct对象.再push_back. 那段代码中,之所以不能使用emplace_back,就是由于我们定义的struct没有显示的构造函 ...

  6. Insubstantial 6.2 Release

    http://shemnon.com/speling/2011/04/insubstantial-62-release.html

  7. css实现圆角三角形例子(无图片)

    css实现圆角三角形例子(无图片) 以前我们做圆角时都会要用到图片来实现,今天我给大家整理的这款css圆角效果是不需要图片的纯css实现的哦,下面我们一起来看看吧. 效果如下图所示 三角形所对方向&q ...

  8. java----监听器的作用

    Web监听器导图详解   监听器是JAVA Web开发中很重要的内容,其中涉及到的知识,可以参考下面导图: Web监听器 1 什么是web监听器? web监听器是一种Servlet中的特殊的类,它们能 ...

  9. 【BZOJ】1674: [Usaco2005]Part Acquisition(spfa)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1674 想法很简单...将每一种看做一个点,如果i可以换成j,那么连边到j.. 费用都为1.. 然后拥 ...

  10. PHP中strlen和mb_strlen函数的区别

    strlen strlen — 获取字符串长度 int strlen ( string $string ) 返回给定的字符串 string 的长度. mb_strlen int mb_strlen ( ...