如何使用R编程在cSPADE中使用最小长度的序列

时间:2014-12-09 08:19:29

标签: r pattern-matching analytics sequential

假设我的cSPADE输出类似于以下内容,我该如何防止单个节点。因为我更关注在两个或更多元素之间获得模式。无论如何,我可以设置最小长度

          sequence support
1            <{A}>    1.00
2            <{B}>    1.00
3            <{D}>    0.50
4            <{F}>    1.00
**5          <{A,F}>    0.75
6          <{B,F}>    1.00
7        <{D},{F}>    0.50
8      <{D},{B,F}>    0.50**

2 个答案:

答案 0 :(得分:4)

我知道这是一个古老的问题,但我想分享一个答案,我个人未能在这个主题上找到很多帮助,以防万一其他人偶然发现这个问题。

我没有直接在cspade中找到一个选项,允许这些序列从一开始就不输出,但你可以在事后消除它们。

您可以使用arulesSequences包中的函数size()。有关其他详细信息,请参阅?size,但假设您将cspade输出保存为“seq”,则可以对cspade输出进行子集,如下所示:

myupdatedseq<-seq[size(seq,"itemsets")>1]

或等效,

myupdatedseq<-subset(seq, subset = size(x,"itemsets")>1)

请参阅arulesSequences包中的?subset以获取其他帮助子集序列。

答案 1 :(得分:0)

对我有用的是:

this

或者,如果要转换为数据框:

myupdatedseq <- subset(seq, size(x) > 1)