使用arulesSequences包:makebin中的错误(数据,文件):'sid'无效

问题描述 投票:1回答:2

我在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'无效

r arules
2个回答
1
投票

sequenceID和eventID的组合必须是唯一的。

否则你会得到以下错误之一:

  • makebin(数据,文件)出错:'sid'无效
  • makebin(数据,文件)出错:'eid'无效

这进一步意味着.txt文件中的项目(每个sequenceID,eventID组合)必须位于同一行中,并且(可能)使用与.txt文件的其余部分相同的分隔符分隔。因此,item列应该是最后一列。

希望这可以帮助!


0
投票

好的,我发现了问题,我发布的是以防有人遇到同样的问题。问题是SequenceID和eventID(第一列和第二列必须按块顺序排序。包中提到了这一点,但我只订购了第一列。

© www.soinside.com 2019 - 2024. All rights reserved.