实验数据:

实验文件:

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
023
024
025
026
027
028
029
030
031
032
033
034
035
036
037
038
039
040
041
042
043
044
045
046
047
048
049
050
051
052
053
054
055
056
057
058
059
060
061
062
063
064
065
066
067
068
069
070
071
072
073
074
075
076
077
078
079
080
081
082
083
084
085
086
087
088
089
090
091
092
093
094
095
096
097
098
099
100
101
102
103
104
library(arulesSequences)
 
tmp_data<-data.frame(item=factor(c("A","B","B","A","B","A","C","A","B","C","B","A","B","A","A","B","A","B")))#必须是factor
tmp_data.tran<-as(tmp_data,"transactions")
transactionInfo(tmp_data.tran)$sequenceID<-c(1,1,1,1,1,2,2,2,2,2,2,3,3,3,4,4,4,4)
transactionInfo(tmp_data.tran)$eventID<-c(10,10,20,30,30,20,20,30,30,30,50,10,30,40,30,30,40,50)
transactionInfo(tmp_data.tran)
 
#lab1:基本约束support(默认为0.1)
s_result<-cspade(tmp_data.tran,parameter = list(support = 0.75),control = list(verbose = TRUE))
inspect(s_result)
#   items      support
# 1 <{item=A}>    1.00
# 2 <{item=B}>    1.00
# 3 <{item=A}, 
#    {item=B}>    1.00
# 4 <{item=A,  
#     item=B}>    0.75
# 5 <{item=B}, 
#    {item=B}>    0.75
# 6 <{item=A,  
#     item=B}, 
#    {item=B}>    0.75
# 7 <{item=A}, 
#    {item=A}>    1.00
# 8 <{item=B}, 
#    {item=A}>    0.75
 
#lab2:maxlen约束:每一个序列的event最多只能为n(每一个序列中的“{}”号最多只能为n个)
#英文解释 maxlen: an integer value specifying the maximum number of elements of a sequence (default 10 range > 0).
#element就是指event。所以:sequence包含event(element),event包含item
s_result<-cspade(tmp_data.tran,parameter = list(support = 0.75,maxlen=1),control = list(verbose = TRUE))
inspect(s_result)
#   items      support
# 1 <{item=A}>    1.00
# 2 <{item=B}>    1.00
# 3 <{item=A,  
#     item=B}>    0.75
 
#lab3:maxsize约束:每一个序列的每个event内部最多只能有n个item(每一个序列中的每个{}内部最多有n个items)
#英文解释maxsize: an integer value specifying the maximum number of items of an element of a sequence(default 10, range > 0).
#element就是指event。所以:sequence包含event(element),event包含item
s_result<-cspade(tmp_data.tran,parameter = list(support = 0.75,maxsize=1),control = list(verbose = TRUE))
inspect(s_result)
#   items      support
# 1 <{item=A}>    1.00
# 2 <{item=B}>    1.00
# 3 <{item=A}, 
#    {item=B}>    1.00
# 4 <{item=B}, 
#    {item=B}>    0.75
# 5 <{item=A}, 
#    {item=A}>    1.00
# 6 <{item=B}, 
#    {item=A}>    0.75
 
#lab4:mingap:所有的相邻的两个eventID的差大于mingap
#英文解释mingap: an integer value specifying the minimum time difference between consecutive elements of a sequence (default none, range >= 0).
s_result<-cspade(tmp_data.tran,parameter = list(support = 0.75,mingap=19),control = list(verbose = TRUE))
inspect(s_result)
#   items      support
# 1  <a href="http://4seohunt.biz/rep/bannerweb.upstate.edu">bannerweb.upstate.edu</a> <{item=A}>     1.00
# 2 <{item=B}>    1.00
# 3 <{item=A}, 
#    {item=B}>    1.00
# 4 <{item=A,  
#     item=B}>    0.75
# 5 <{item=B}, 
#    {item=B}>    0.75
# 6 <{item=A,  
#     item=B}, 
#    {item=B}>    0.75
#分析:缺少了实验lab1中的
# 7 <{item=A}, 
#    {item=A}>    1.00
#eventid只差分别是:sid=1时,eventid=30-10=20>19。sid=2时,eventid=30-20=10不>19。sid=3时,eventid=40-10=30>19。sid=4时,eventid=40-30=10不>19。即supp=2/4=0.5
# 8 <{item=B}, 
#    {item=A}>    0.75
#eventid只差分别是:sid=1时,eventid=30-10=20>19。sid=2时,无b->a。sid=3时,eventid=40-30=10不>19。sid=4时,eventid=40-30=10不>19。即supp=1/4=0.25
 
#lab5:maxgap:所有的相邻的两个eventID的差小于等于maxgap
#英文解释maxgap: an integer value specifying the maximum time difference between consecutive elements of a sequence (default none, range >= 0).
s_result<-cspade(tmp_data.tran,parameter = list(support = 0.75,maxgap=19),control = list(verbose = TRUE))
inspect(s_result)
#   items      support
# 1 <{item=A}>    1.00
# 2 <{item=B}>    1.00
# 3 <{item=A}, 
#    {item=B}>    0.75
# 4 <{item=A,  
#     item=B}>    0.75
# 5 <{item=B}, 
#    {item=A}>    0.75
#分析:和实验lab1中数据的差别
#lab1中
# 3 <{item=A}, 
#    {item=B}>    1
#lab5中
# 3 <{item=A}, 
#    {item=B}>    0.75
#eventid只差分别是:sid=1时,eventid=30-20=10小于等于19,30-10=20不小于等于19。sid=2时,50-20=30不小于等于19,50-30=20不小于等于19,30-20=10小于等于19。sid=3时,eventid=30-10=20不小于等于19。sid=4时,eventid=40-30=10不小于等于19,50-40=10小于等于19。即supp=3/4=0.75
 
#lab6:maxwin:
#--------

arulesSequences包做序列模式的关联分析的更多相关文章

  1. 使用VEGAS2(Versatile Gene-based Association Study)进行gene based的关联分析研究

    gene-based关联分析研究是SNP-based关联分析研究的一个补充. 目前有很多工具支持gene-based关联分析研究,比如GCTA,VEGAS2等. 下面主要介绍一下怎么用VEGAS2做g ...

  2. R系列:关联分析;某电商平台的数据;做捆绑销售和商品关联推荐

    附注:不要问我为什么写这么快,是16年写的. 一.分析目的 I用户在某电商平台买了A,那么平台接下来应该给用户推荐什么,即用户在买了商品A之后接下来买什么的倾向性最大: II应该把哪些商品在一起做捆绑 ...

  3. 更新几篇之前写在公众号上的文章:线性可分时SVM理论推导;关联分析做捆绑销售和推荐;分词、去停用词和画词云

    适合阅读人群:有一定的数学基础. 这几篇文章是16年写的,之前发布在个人公众号上,公众号现已弃用.回过头来再看这几篇文章,发现写的过于稚嫩,思考也不全面,这说明我又进步了,但还是作为学习笔记记在这里了 ...

  4. 关联分析Apriori算法和FP-growth算法初探

    1. 关联分析是什么? Apriori和FP-growth算法是一种关联算法,属于无监督算法的一种,它们可以自动从数据中挖掘出潜在的关联关系.例如经典的啤酒与尿布的故事.下面我们用一个例子来切入本文对 ...

  5. GWAS | 全基因组关联分析 | Linkage disequilibrium (LD)连锁不平衡 | 曼哈顿图 Manhattan_plot | QQ_plot | haplotype phasing

    现在GWAS已经属于比较古老的技术了,主要是碰到严重的瓶颈了,单纯的snp与表现的关联已经不够,需要具体的生物学解释,这些snp是如何具体导致疾病的发生的. 而且,大多数病找到的都不是个别显著的snp ...

  6. 【数据挖掘】关联分析之Apriori(转载)

    [数据挖掘]关联分析之Apriori 1.Apriori算法 如果一个事务中有X,则该事务中则很有可能有Y,写成关联规则 {X}→{Y} 将这种找出项目之间联系的方法叫做关联分析.关联分析中最有名的问 ...

  7. UDP主要丢包原因及具体问题分析

    UDP主要丢包原因及具体问题分析 一.主要丢包原因   1.接收端处理时间过长导致丢包:调用recv方法接收端收到数据后,处理数据花了一些时间,处理完后再次调用recv方法,在这二次调用间隔里,发过来 ...

  8. Apriori 关联分析算法原理分析与代码实现

    前言 想必大家都听过数据挖掘领域那个经典的故事 - "啤酒与尿布" 的故事. 那么,具体是怎么从海量销售信息中挖掘出啤酒和尿布之间的关系呢? 这就是关联分析所要完成的任务了. 本文 ...

  9. 全基因组关联分析(Genome-Wide Association Study,GWAS)流程

    全基因组关联分析流程: 一.准备plink文件 1.准备PED文件 PED文件有六列,六列内容如下: Family ID Individual ID Paternal ID Maternal ID S ...

随机推荐

  1. 使用VPN服务器解决公司不能上淘宝的问题

    很多公司为了保证员工的效率,通常采用屏蔽端口的方法屏蔽掉了一些网站,比如淘宝.QQ网页版等,这样做虽然也是公司的迫不得已,但是也有点不人性化,毕竟非上班时间也是上不去此类网站的.前些日子电商大站,抢不 ...

  2. 计算机图形学——OpenGL开发库开发库

    vc++6.0 有 OpenGL 的东西.有头文件 GL.H, GLAUX.H, GLU.H 但没有 GLUT 软件包/工具包 如果想使用glut.h的话必须自己添加. 首先下载 OpenGL开发库, ...

  3. Android音频系统之AudioFlinger(四)

    http://blog.csdn.net/xuesen_lin/article/details/8805096 1.1.1 AudioMixer 每一个MixerThread都有一个唯一对应的Audi ...

  4. CMMI整体理解

    CMMI的目的,一是质量,二是时间表,三是最低的成本:我的理解就是即以最低的成本,在既定的时间表要求下,达到相应的质量水平. CMMI是什么?我的理解是,CMMI并不是一个过程说明书,它不是告诉我们怎 ...

  5. 什么是领域驱动设计(Domain Driven Design)?

    本文是从 What is Domain Driven Design? 这篇文章翻译而来. ”…在很多领域,专家的作用体现在他们的专业知识上而不是智力上.“ -- Don Reinertsen 领域驱动 ...

  6. 银行IT入门深似海

    最初就是接触各种系统,了解各大系统的功能 像建行 从终端到后台就经历10多个系统 另外,就是各种标准规范 例如报文规范  搞终端我师父让我看8583规范 还有什么银联的规范  PBOC什么的 我现在还 ...

  7. JSON与XML的区别

    1.定义介绍 (1).XML定义扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许 ...

  8. .NET 实现自定义ContextUser的Identity和Principal实现自定义用户信息,权限验证。

    备用收藏,http://blog.csdn.net/msdnxgh/article/details/6894885 .NET 实现自定义ContextUser的Identity和Principal 在 ...

  9. Javascript开发之工具归纳

    写在前面 由于JS开发对我来说是全新的技术栈,开发过程中遇到了各种各样的框架.工具,同时也感叹一下相对于.Net的框架(工具框架以及测试框架等)JS框架真的是太丰富了.社区的力量果然强大---也是由此 ...

  10. 在Mac OS X上用自己编译出的CoreCLR运行.NET程序

    当昨天被Mac OS X上无法编译CoreCLR的问题困扰时(详见Mac OS X上尝试编译CoreCLR源代码),后来发现这个难题竟然被神人@kangaroo给解决了,连CoreCLR的微软开发人员 ...