[問題] 關聯式規則有空集合

看板R_Language作者 (serena)時間6年前 (2018/03/06 11:40), 6年前編輯推噓5(5014)
留言19則, 4人參與, 6年前最新討論串1/1
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 入門(寫過其他程式,只是對語法不熟悉) [問題敘述]: 我要用R做關聯式規則, 使用arules套件,分析出來不知道為什麼會有空集合?(不知道怎麼描述XD) 我想可能是我最小信賴度(min confidence)調太低? 想知道為什麼調太低會出現空集合? 還有想知道要怎麼提高分析出來的結果數量, 本來以為是增加資料,但因為原始樣本就只有這些, 所以用隨機的方式增加原本的樣本, 結果不知道是不是因為關聯式規則算法是 在全部東西裡佔幾分之幾,還有在a東西裡b也存在的幾分之幾, 所以整體就跟著增加,並沒有比較多的分析結果 後來把資料刪減到50筆反而比較多 有沒有什麼方法可以將結果增加呢?除了得到更多原始資料, 謝謝~ [程式範例]: 張貼能夠重現錯誤的程式碼,可以幫助版友更快的幫你解決問題 建立重現錯誤的方法可以參考: install.packages("readxl") library(readxl) path <- "random.csv" data <- read.csv(path, header=T, sep=",") data1=as.matrix(data) require(arules) rule <- apriori(data1,parameter=list( supp=0.1, conf=0.1)) inspect(rule) https://imgur.com/kH9IvlP
資料大概是長這樣 有49個項目A1~A49 原始資料筆數是大約是五百筆, 結果是這樣 https://imgur.com/PCEz9We
[環境敘述]: R version 3.4.1 [關鍵字]: 關聯式規則 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.44.147.236 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1520307614.A.96C.html ※ 編輯: a3236852 (114.44.147.236), 03/06/2018 11:42:29

03/06 21:49, 6年前 , 1F
Supp太高 我的經驗是6000筆資料都會把supp調到0.003之類
03/06 21:49, 1F

03/06 21:49, 6年前 , 2F
的才會有結果
03/06 21:49, 2F

03/06 21:52, 6年前 , 3F
你的supp是0.1,資料是500筆,代表同一個規則要出現500*0
03/06 21:52, 3F

03/06 21:52, 6年前 , 4F
.1=50次(就是結果裡的count)才會算進來。而500筆資料要
03/06 21:52, 4F

03/06 21:52, 6年前 , 5F
出現相同的規則50次,感覺上是有點困難啦,有錯請各位指
03/06 21:52, 5F

03/06 21:52, 6年前 , 6F
正。
03/06 21:52, 6F

03/06 21:55, 6年前 , 7F
呃...不好意思,圖沒跑出來,看來我回答錯了,請忽略上
03/06 21:55, 7F

03/06 21:55, 6年前 , 8F
面一大段(潛水)
03/06 21:55, 8F

03/06 22:17, 6年前 , 9F
我的經驗是 不管你門檻怎麼調那個空白的規則都會存在
03/06 22:17, 9F

03/06 22:17, 6年前 , 10F
可能要問作者,不過那個package應該是已經沒有再維護了
03/06 22:17, 10F
想請問所以是套件的問題囉,如果用pythonn做空集合可能就會消失對吧?

03/06 22:23, 6年前 , 11F
基本上關聯規則是你篩選出給定support, confidence 的
03/06 22:23, 11F

03/06 22:23, 6年前 , 12F
結果,只是根據條件可以用apriori 演算法加速篩選,而
03/06 22:23, 12F

03/06 22:23, 6年前 , 13F
資料中的每種組合都有一組supp, con,演算法只是選出
03/06 22:23, 13F

03/06 22:23, 6年前 , 14F
來給你看,所以如果妳想增加規則的結果,你可以考慮先
03/06 22:23, 14F

03/06 22:23, 6年前 , 15F
列出所有的規則組合,再看看你要多少結果,反著切sup
03/06 22:23, 15F

03/06 22:23, 6年前 , 16F
跟con。
03/06 22:23, 16F

03/06 22:25, 6年前 , 17F
如果有新資料,再用妳上一個切的結果做樣本參數,然後
03/06 22:25, 17F

03/06 22:25, 6年前 , 18F
就看你想怎樣做了。
03/06 22:25, 18F

03/07 10:28, 6年前 , 19F
先射箭,再畫靶,去測支持度跟信心度的參數組合
03/07 10:28, 19F
※ 編輯: a3236852 (42.73.115.104), 03/07/2018 11:06:25 謝謝大家的意見,我有想法了,謝謝!!!! ※ 編輯: a3236852 (42.73.115.104), 03/07/2018 12:55:04
文章代碼(AID): #1QdWsUbi (R_Language)