2016-09-22 4 views
0

Rライブラリarulesをルールのマイニングに使用しています。 lhs列が空であるしかしR - 関連ルール、lhs列が空です。

#Get the rules 
rules <- apriori(trans, parameter = list(supp=0.05, conf = 0.05)) #minlen = 2 
rules <- sort(rules, by="confidence", decreasing=TRUE) 

だから最初に私はルールを参照しようとした

inspect(rules) 
lhs rhs    support confidence lift 
3 {} => {product=CM,DD,OS} 0.501 0.501  1 
2 {} => {product=CM,DD} 0.223 0.223  1 
1 {} => {product=CM}  0.068 0.068  1 

だから私は、具体的lhs列をお願いしてみました:

rules <- apriori(data=trans, parameter=list(supp=0.05, conf = 0.05), 
       appearance = list(default="rhs", lhs="product=CM,DD,OS"), 
       control = list(verbose=F)) 
rules <- sort(rules, by="confidence", decreasing=TRUE) 
inspect(rules) 

残念ながら出力は変わりません。

クライアントのほとんどが〜4の製品を持っている可能性がありますので、ルールではないかもしれませんが、私はそれを見つけることができません。

答えて

0

したがって、問題はデータの形式にありました。データを.csvにダンプする前にread.transactionsを使用すると正しく動作します。即時のステップは迷惑であるよう

trans <- data.frame(product = as.factor(qry$product_owned)) 
trans <- as(trans, "transactions") 

しかし.csvファイルを使用します。

trans = read.transactions("C:/.../basket_analysis_data.csv", format="single",sep = ";", cols = c(2,1)) 

私が直接ODBC接続を使用していた前には、このようにそれらを変換し、その後、データフレームにデータを入れて。誰でも.csvなしで動作させる方法を助けることができれば、私はそれを感謝します。

関連する問題