我在R中使用arulesSequences
包。文档对于read_baskets
函数接收的数据类型来说太少了。我猜数据应该是文本(.txt)格式。列名是:“sequenceID”,“eventID”,“SIZE”和“items”。我的数据有大约200,000行,在z.txt文件中看起来如下:
1,1364,3,{12,17,19}
1,1130,4,{14,17,21,23}
1,1173,3,{19,23,9}
1,98,5,{14,15,2,21,5}
2,1878,4,{1,10,14,3}
2,1878,13,{1,12,14,15,16,17,18,19,2,21,24,25,5}
2,1878,1,{2}
我试着用:
x <- read_baskets("z.txt", sep = ",",info =c("sequenceID","eventID","SIZE"))
s <- cspade(x,parameter = list(support = 0.001),control = list(verbose =
TRUE),tmpdir = tempdir())
但我得到这个错误:
makebin(数据,文件)出错:'sid'无效
sequenceID和eventID的组合必须是唯一的。
否则你会得到以下错误之一:
这进一步意味着.txt文件中的项目(每个sequenceID,eventID组合)必须位于同一行中,并且(可能)使用与.txt文件的其余部分相同的分隔符分隔。因此,item列应该是最后一列。
希望这可以帮助!
好的,我发现了问题,我发布的是以防有人遇到同样的问题。问题是SequenceID和eventID(第一列和第二列必须按块顺序排序。包中提到了这一点,但我只订购了第一列。