Python中的Apriori關聯算法-市場購物籃分析

原文連接:http://tecdat.cn/?p=7939

數據科學Apriori算法是一種數據挖掘技術,用於挖掘頻繁項集和相關的關聯規則。本模塊重點介紹什麼是關聯規則挖掘和Apriori算法,以及Apriori算法的用法。此外,在小型企業場景中,咱們將藉助Python編程語言構建一個Apriori模型。

  

什麼是關聯規則挖掘?

如前所述,Apriori算法用於關聯規則挖掘。如今,什麼是關聯規則挖掘?關聯規則挖掘是一種用於識別一組項目之間的頻繁模式和關聯的技術。算法

例如,瞭解客戶的購買習慣。經過查找顧客放置在其「購物籃」中的不一樣商品之間的關聯和關聯,能夠得出重複的模式. 編程

識別產品/商品之間的關聯的過程稱爲關聯規則挖掘。爲了實現關聯規則挖掘,已經開發了許多算法。Apriori算法是其中最受歡迎的算法,並且能夠說是最有效的算法。讓咱們討論什麼是Apriori算法。編程語言

什麼是先驗算法?spa

Apriori算法假定頻繁項集的任何子集都必須是頻繁的。3d

 

假設包含{葡萄酒,薯條,麪包}的交易也包含{葡萄酒,麪包}。所以,根據Apriori原理,若是{酒,薯條,麪包}很頻繁,那麼{酒,麪包}也必須很頻繁。blog

Apriori算法如何工做?

Apriori算法中的關鍵概念是,它假定一個頻繁項集的全部子集都是頻繁的。一樣,對於任何不頻繁的項目集,其全部超集也必須不頻繁。事務

讓咱們在一個很是著名的業務場景市場籃分析的幫助下,嘗試並理解Apriori算法的工做原理。開發

這是一個小時內包含六個事務的數據集。每一個事務都是0和1的組合,其中0表示不存在某項,而1表示其存在。rem

交易編號get

葡萄酒

薯片

麪包

牛奶

1

1個

1個

1個

1個

2

1個

0

1個

1個

3

0

0

1個

1個

4

0

1個

0

0

5

1個

1個

1個

1個

6

1個

1個

0

1個

咱們能夠從這種狀況下找到多個規則。例如,在葡萄酒,薯條和麪包的交易中,若是購買了葡萄酒和薯條,那麼客戶也會購買麪包。

{葡萄酒,薯條} => {麪包}

如今咱們知道了找出有趣規則的方法,讓咱們回到示例中。在開始以前,讓咱們將支持閾值固定爲50%。

步驟1:建立全部交易中出現的全部項目的頻率表

項目

頻率

葡萄酒

4

薯片

4

麪包

4

牛奶

5

步驟2根據支持閾值查找重要項目

支持閾值= 3

項目

頻率

葡萄酒

4

薯片

4

麪包

4

牛奶

5

步驟3從重要的項目開始,使成對的商品與訂單無關

項目

頻率

葡萄酒,薯條

3

葡萄酒,麪包

3

葡萄酒,牛奶

4

薯條,麪包

2

薯片,牛奶

3

麪包,牛奶

4

步驟4根據支持閾值找到重要項目

項目

頻率

葡萄酒,牛奶

4

麪包,牛奶

4

第5步:根據第4步中的重要商品,三件一塊兒購買的商品

項目

頻率

葡萄酒,麪包,牛奶

3

{酒,麪包,牛奶}是從給定數據中得到的惟一重要項目集。可是在實際場景中,咱們將有數十個項目可用來構建規則。而後,咱們可能必須製做四對/五對項集。

 

Python中的Apriori算法-市場籃子分析

問題陳述

一家零售商店的經理正在嘗試找出六個商品之間的關聯規則,以找出哪些商品更常常一塊兒購買,以便他能夠將這些商品放在一塊兒以增長銷量。

 

數據集

如下是第一天的交易數據。此數據集包含6個項目和22個交易記錄。

 

 

使用Python進行市場購物籃分析

咱們將實現Apriori算法,以幫助經理進行市場分析。

 

步驟1:導入庫 

 

步驟2:載入資料集

 

 

步驟3:瀏覽記錄 

 

步驟4:查看 

步驟5: 將Pandas DataFrame轉換爲列表列表

 

步驟6:創建Apriori模型

 

步驟7:打印出規則數量 

步驟8:瀏覽規則

 

 

 

 

第一條規則的支持值爲0.5。該數字是經過將包含「牛奶」,「麪包」和「黃油」的交易數量除以交易總數而得出的。

該規則的置信度爲0.846,這代表在同時包含「牛奶」和「麪包」的全部交易中,也有84.6%的交易包含「黃油」。

提高1.241告訴咱們,同時購買「牛奶」和「黃油」的顧客購買「黃油」的可能性是「黃油」的默承認能性的1.241倍。

相關文章
相關標籤/搜索