python 實(shí)現(xiàn)關(guān)聯(lián)規(guī)則算法Apriori的示例
首先導(dǎo)入包含apriori算法的mlxtend庫(kù),
pip install mlxtend
調(diào)用apriori進(jìn)行關(guān)聯(lián)規(guī)則分析,具體代碼如下,其中數(shù)據(jù)集選取本博客 “機(jī)器學(xué)習(xí)算法——關(guān)聯(lián)規(guī)則” 中的例子,可進(jìn)行參考,設(shè)置最小支持度(min_support)為0.4,最小置信度(min_threshold)為0.1,
最小提升度(lift)為1.0,對(duì)數(shù)據(jù)集進(jìn)行關(guān)聯(lián)規(guī)則分析,
from mlxtend.preprocessing import TransactionEncoderfrom mlxtend.frequent_patterns import apriorifrom mlxtend.frequent_patterns import association_rulesimport pandas as pddf_arr = [[’蘋(píng)果’,’香蕉’,’鴨梨’], [’橘子’,’葡萄’,’蘋(píng)果’,’哈密瓜’,’火龍果’], [’香蕉’,’哈密瓜’,’火龍果’,’葡萄’], [’橘子’,’橡膠’], [’哈密瓜’,’鴨梨’,’葡萄’] ]#轉(zhuǎn)換為算法可接受模型(布爾值)te = TransactionEncoder()df_tf = te.fit_transform(df_arr)df = pd.DataFrame(df_tf,columns=te.columns_)#設(shè)置支持度求頻繁項(xiàng)集frequent_itemsets = apriori(df,min_support=0.4,use_colnames= True)#求關(guān)聯(lián)規(guī)則,設(shè)置最小置信度為0.15rules = association_rules(frequent_itemsets,metric = ’confidence’,min_threshold = 0.15)#設(shè)置最小提升度rules = rules.drop(rules[rules.lift <1.0].index)#設(shè)置標(biāo)題索引并打印結(jié)果rules.rename(columns = {’antecedents’:’from’,’consequents’:’to’,’support’:’sup’,’confidence’:’conf’},inplace = True)rules = rules[[’from’,’to’,’sup’,’conf’,’lift’]]print(rules)#rules為Dataframe格式,可根據(jù)自身需求存入文件
輸出結(jié)果如下:
from to sup conf lift0 (哈密瓜) (火龍果) 0.4 0.666667 1.6666671 (火龍果) (哈密瓜) 0.4 1.000000 1.6666672 (哈密瓜) (葡萄) 0.6 1.000000 1.6666673 (葡萄) (哈密瓜) 0.6 1.000000 1.6666674 (葡萄) (火龍果) 0.4 0.666667 1.6666675 (火龍果) (葡萄) 0.4 1.000000 1.6666676 (哈密瓜, 葡萄) (火龍果) 0.4 0.666667 1.6666677 (哈密瓜, 火龍果) (葡萄) 0.4 1.000000 1.6666678 (葡萄, 火龍果) (哈密瓜) 0.4 1.000000 1.6666679 (哈密瓜) (葡萄, 火龍果) 0.4 0.666667 1.66666710 (葡萄) (哈密瓜, 火龍果) 0.4 0.666667 1.66666711 (火龍果) (哈密瓜, 葡萄) 0.4 1.000000 1.666667Process finished with exit code 0
以上就是python 實(shí)現(xiàn)關(guān)聯(lián)規(guī)則算法Apriori的示例的詳細(xì)內(nèi)容,更多關(guān)于python 實(shí)現(xiàn)關(guān)聯(lián)規(guī)則算法Apriori的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. 詳解Android studio 動(dòng)態(tài)fragment的用法2. 解決Android studio xml界面無(wú)法預(yù)覽問(wèn)題3. 圖文詳解vue中proto文件的函數(shù)調(diào)用4. Spring Boot和Thymeleaf整合結(jié)合JPA實(shí)現(xiàn)分頁(yè)效果(實(shí)例代碼)5. php模擬實(shí)現(xiàn)斗地主發(fā)牌6. 什么是python的自省7. Vue封裝一個(gè)TodoList的案例與瀏覽器本地緩存的應(yīng)用實(shí)現(xiàn)8. vue 使用localstorage實(shí)現(xiàn)面包屑的操作9. .Net Core使用Coravel實(shí)現(xiàn)任務(wù)調(diào)度的完整步驟10. Vuex localStorage的具體使用

網(wǎng)公網(wǎng)安備