在我写的一个小脚本中,我成功地调用了
library(arules)
trans <- as(data, "transactions")
现在我想把它包含在R包中的一个函数中。arules
被导入,我使用::
调用arules函数。但是,as
不起作用。它给了我上面的错误消息,这表明它不知道如何处理transactions
。而且在我可以导入的arules
包中没有as.transactions
或类似的内容。
此答案显示如何从包导入运算符。我想我的问题也有类似的地方,我只是不知道该找什么。
为了让as
了解transactions
是什么,我必须做些什么?
经过进一步的搜索,我在Hadley Wickham的Advanced R中找到了答案。transactions
是一个S4类,从arules
的源代码中可以看出。要导入S4类,我们只需在.中使用该类的函数的头部上方放置一个roxygen样式的@importClassesFrom
#' @importClassesFrom arules transactions
可能还需要将methods
包添加到导入中,因为S4功能是在那里实现的。