运行Cspade时的系统调用错误 - R.

时间:2012-07-18 13:56:07

标签: r

我正在尝试在R中的arulesSequences包中运行cspade函数。在使用read_baskets成功读入我的事务之后,我尝试针对我读入的事务对象执行cspade函数。

但是,当我执行命令时,我收到一个错误:系统调用失败。具体来说,这是输出。

 preprocessing ... 1 partition(s), 1.2 MB [0.23s]
 mining transactions ...Error in cspade(table, parameter = list(support = 0.1), control =         list  (verbose = TRUE)) : 
 system invocation failed

“挖掘事务”的存在表明cspade代码中的以下函数调用失败。

  if (system2(file.path(exe, "spade"), args = c("-i", file, 
  "-s", parameter@support, opt, "-e", nop, "-o"), stdout = out)) 
  stop("system invocation failed"). 

作为参考,我可以使用示例zaki数据集成功生成序列。

有没有人知道为什么这个命令可能会失败?

谢谢,

斯图尔特

2 个答案:

答案 0 :(得分:2)

http://en.wikibooks.org/wiki/Data_Mining_Algorithms_In_R/Sequence_Mining/SPADE#Caveats

请参阅上面的链接,警告部分并降低支持阈值。

答案 1 :(得分:-2)

我有同样的问题,我减少了支持(放0),仍然无法正常工作。但想出了另一个解决方案: 我改变了数据大小(更少的行),它的工作原理。 所以,例如,如果你可以将你的数据集分成2个半尺寸的部分,并将每个部分的交易数据设为x_1和x_2,

frequent_pattern_1< - cspade(x_1,parameter = list(support = 0)) frequent_pattern_2< - cspade(x_2,parameter = list(support = 0))

然后获得分析每个数据集以获得所有数据的绝对支持。

获得绝对支持值 support_x_1< -support(frequent_pattern_1,x_1,type = c(“absolute”),control = NULL) support_x_2< -support(frequent_pattern_2,x_2,type = c(“absolute”),control = NULL)

然后找到匹配的序列并总结匹配序列的支持。