来自R的Arules Sequence Mining的主要序列

时间:2014-06-25 17:45:46

标签: r sequence arules

如何从R中的arulesSequence包中的cspade算法中删除子序列,例如,如果我的数据(Sample.txt)如下所示

列名:sequenceID,EventID,size,Item

1   1   1   A
1   2   1   B
1   3   1   C
1   4   1   D
2   1   1   A
2   2   1   B
2   3   1   C
3   1   1   A
3   2   1   B
3   3   1   C
3   4   1   D

运行以下arulesSequence代码行

library("arulesSequences")
#### while importing the Sample.txt remove the column names #####
SymptomArulesSeq <- read_baskets("Sample.txt",sep = "[ \t]+",info =  c("sequenceID","eventID","size"))
s1 <- cspade(SymptomArulesSeq, parameter = list(support = 0.1), control = list(verbose = TRUE),tmpdir = tempdir())
summary(s1)
as(s1, "data.frame")

sequence    support
<{A}>   1
<{B}>   1
<{C}>   1
<{D}>   0.6666667
<{A},{D}>   0.6666667
<{B},{D}>   0.6666667
<{C},{D}>   0.6666667
<{B},{C},{D}>   0.6666667
<{A},{C},{D}>   0.6666667
<{A},{B},{C},{D}>   0.6666667
<{A},{B},{D}>   0.6666667
<{A},{C}>   1
<{B},{C}>   1
<{A},{B},{C}>   1
<{A},{B}>   1

如何在不丢失项目的情况下找到全长序列?

从数据开始,从A开始的主要全长序列是A(1),A-> B(1),A-> B-> C(1)和A-> B- &gt; C-> D(0.67),那么如何删除中间子序列并希望得到上述结果。

这里的挑战是如何消除在B,B-> C等之间形成的序列,以及如何消除像A-> B-> D这样的序列(这里我失去了实际的顺序;项目C被丢弃)

0 个答案:

没有答案