强制cspade使用R包序列仅查看涉及特定项的规则

强制cspade使用R包序列仅查看涉及特定项的规则,r,R,是否可以强制cspade只查看涉及特定项目的规则? 例如,以下代码提供的输出显示了根据cspade函数中的参数创建的所有规则: library(Matrix) library(arules) library(arulesSequences) x <- read_baskets(con = system.file("misc", "zaki.txt", package = "arulesSequences"), info = c("sequenceID","e

是否可以强制cspade只查看涉及特定项目的规则? 例如,以下代码提供的输出显示了根据cspade函数中的参数创建的所有规则:

library(Matrix)
library(arules)
library(arulesSequences)
x <- read_baskets(con = system.file("misc", "zaki.txt", package = 
"arulesSequences"), 
              info = c("sequenceID","eventID","SIZE"))
s1 <- cspade(x, parameter = list(support = 0.4), control = list(verbose = TRUE))
as(s1, "data.frame")

          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
9        <{A,B,F}>    0.75
10         <{A,B}>    0.75
11       <{D},{B}>    0.50
12       <{B},{A}>    0.50
13       <{D},{A}>    0.50
14       <{F},{A}>    0.50
15   <{D},{F},{A}>    0.50
16     <{B,F},{A}>    0.50
17 <{D},{B,F},{A}>    0.50
18   <{D},{B},{A}>    0.50
我还知道,我可以在运行cspade之前进行预筛选,只包括具有{D}的项(我所有的sequenceid都包含D)

对于我所拥有的数据,它更大,包含更多的项目、序列和事件。所有SequenceID都在某处包含{D},但是{D}是一个罕见的事件,我只想看看是什么导致了{D}。我对这样的规则不感兴趣

我知道我可以将支持设置为非常低,以尝试捕获{D}出现的所有时间,但我的计算机不会运行它,因为数据太多


我看过stackoverflow和其他站点上的许多arulesSequences示例,但还没有找到如何做到这一点。

为什么不能在arules包中使用
subset
函数?我可能错了,但从我看到的示例中可以看出,subset函数是在制定规则后执行的。我试图在制定规则时进行子集划分,以便不对某些规则进行评估。
as(s1, "data.frame") %>%
filter(grepl("D", sequence, fixed = TRUE))