2016-10-17 90 views
0

我在R中使用apriori算法來挖掘關聯規則。我可以根據信心,提升和支持來檢查所產生的規則,但希望評估每條規則的定罪價值。有誰知道如何在R中做到這一點?計算R中關聯規則的定罪值?

回答

1

看一看?arules::interestMeasure。例如,遵循Wikipedia example,你可以這樣做:

df <- read.table(header=T, text="ID  milk bread butter beer diapers 
1 T T F F F 
2 F F T F F 
3 F F F T T 
4 T T T F F 
5 F T F F F") 
library(arules) 
trans <- as(df[, -1], "transactions") 
rules <- apriori(trans, list(supp = 0.01, conf = 0.01, minlen = 2)) 
cbind(as(rules, "data.frame"), conviction=interestMeasure(rules, "conviction", trans)) 
#      rules support confidence  lift conviction 
# 1  {beer} => {diapers}  0.2 1.0000000 5.0000000   NA 
# 2  {diapers} => {beer}  0.2 1.0000000 5.0000000   NA 
# 3  {butter} => {milk}  0.2 0.5000000 1.2500000  1.2 
# 4  {milk} => {butter}  0.2 0.5000000 1.2500000  1.2 
# 5  {butter} => {bread}  0.2 0.5000000 0.8333333  0.8 
# 6  {bread} => {butter}  0.2 0.3333333 0.8333333  0.9 
# 7   {milk} => {bread}  0.4 1.0000000 1.6666667   NA 
# 8   {bread} => {milk}  0.4 0.6666667 1.6666667  1.8 
# 9 {milk,butter} => {bread}  0.2 1.0000000 1.6666667   NA 
# 10 {bread,butter} => {milk}  0.2 1.0000000 2.5000000   NA 
# 11 {milk,bread} => {butter}  0.2 0.5000000 1.2500000  1.2 
+0

嗨!所以我認爲這工作。然而,當我在關聯規則中運行它時,生成的表格不包括列標題(規則,支持,置信度,提升,定罪),並且沒有包含規則的實際描述。這可能是我如何運行apriori算法的問題嗎? –

+0

我不知道。請閱讀[如何在R中提供最小重現性示例](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example#answer-5963610)。然後相應地編輯和改進您的原始問題並添加這樣的示例。這可以防止猜測。無論如何這是最好的做法 - 將鼠標懸停在您的問題下的R標籤上,並閱讀小記事本。 – lukeA

+1

我設法解決格式問題。謝謝,這正是我需要的! –