[英]How can i make arules.apriori work in python using rpy2
我正在嘗試使用 rpy2 在 python 中運行先驗算法。 我碰壁了,因為我想給算法一些參數,但是代碼不起作用。 如果我將參數留空,它將運行。 有沒有辦法讓先驗算法與參數一起工作?
我有一些 R 經驗,在 R 我的代碼看起來像這樣。
output <- apriori(input, parameter = list(support=.01, confidence=.01, minlen=2))
python 代碼:
from rpy2.robjects.packages import importr
import rpy2.robjects as robjects
import rpy2.robjects.packages as rpackages
# import R packages
base = importr('base')
arules = importr('arules')
arulesViz = importr('arulesViz')
Matrix = importr('Matrix')
utils = importr('utils')
grid = importr('grid')
data = robjects.r('read.transactions("input_data.csv", sep = ",",rm.duplicates=FALSE)')
summary_r = arules.itemFrequency(data, type="absolute")
apr = arules.apriori(data,parameter=list(support=0.001, confidence=0.001, minlen=2))
print(apr)
我在另一個論壇上找到了上述問題的答案。
您需要添加以下代碼
from rpy2.robjects.vectors import ListVector
apr = arules.apriori(data,parameter= robjects.ListVector({"support":0.01, "confidence":0.01, "minlen":2}))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.