使用R語言進行購物籃分析(Market Basket Analysis)

更新 發佈閱讀 6 分鐘

在資料分析領域中,購物籃分析又稱關聯分析,從大量的交易資料中,探勘出在資料間具有相關性的隱藏規則與商業知識。購物籃分析最經典的就是啤酒與尿布的例子了!

世界最大的零售商沃爾瑪(Wal-mart)就運用關聯分析的技術,從每日大量的商品交易資料中進行消費者購買商品間的關聯分析,結果竟然意外發現星期四晚上通常同時購買啤酒與尿布。

現在就來看看要如何利用R語言進行關聯分析吧!

首先,先載入關聯分析所需要用到的arules相關套件:

install.packages("arules")
library(arules)
install.packages("arulesViz")
library(arulesViz)

這次資料的載點:https://1drv.ms/u/s!Ai2AWJ0icWFvhHj-s3ps-jIJjvrv

下載後打開該資料檔,會發現它跟我們平常用來分析的資料檔並不一樣,是屬於交易資料形式。

因此我們必須採用read.transaction來讀取(交易資料與一般data frame不同,為每次買了甚麼商品)

groceries = read.transactions("C:\\Users\\user\\Desktop\\groceries.csv",sep=",")

讀取完後可以使用summary函式看一下資料的摘要。

summary(groceries)

執行結果如下,可以發現統計出了幾個比較頻繁出現的字詞,

vocus|新世代的創作平台

接下來呢,我們用inspect函式來看前面五筆資料。

inspect(groceries[1:5])
vocus|新世代的創作平台

除了看商品品項之外,也可以使用size函式,來看單次購買的品項有幾種商品。

接著呢,我們再利用itemFrequency函式,去列出每一項品項佔的比例,藉由這個函數,也可以找出出現頻率比較高的商品。

itemFrequency(groceries)
vocus|新世代的創作平台

接下來就是重頭戲拉!  看到密密麻麻的比例我們要怎麼讓它變得比較好理解呢?

因此我們接著來進行畫圖的動作。

用itemFrequencyPlot繪出產品佔的比例圖,support參數是支持度的意思(通常會默認是0.1,如果不使用的話,則會列出所有產品品項,會很亂喔。)

itemFrequencyPlot(groceries,topN = 10)
itemFrequencyPlot(groceries,topN = 10,type = "absolute")
itemFrequencyPlot(groceries,topN = 10,horiz = T,
main = "Item Frequency",xlab = "Relative Frequency")

itemFrequencyPlot(groceries,support = 0.1,
main = "Item Frequency with S = 0.1",ylab = "Relative Frequency")

跑完code後圖就會出來啦!

一看就知道原來whole milk出現的頻率是最高的

vocus|新世代的創作平台

再來,便是載入在關聯分析中最重要的演算法之一 —> Apriori:

Apriori是最經典的關聯分析挖掘演算法,原理清晰且實現方便,可以說是學習關聯分析的入門演算法,但效率低;而Eclat演算法則在運行效率方面有所提升。

載入以下程式碼:

apriori(groceries)

rule1 = apriori(groceries,parameter = list(support = 0.006,confidence = 0.3))
summary(rule1)

apriori演算法大概是這樣運作的,我們必須要設定support以及confidence:

  • 支持度(support):「規則」在資料內具有普遍性,也就是這些 A 跟 B 同時出現的機率多少。
  • 信賴度(confidence):「規則」要有一定的信心水準,也就是當購買 A 狀態下,也會購買 B 的條件機率。

等rule跑出來之後,要觀察需要使用inspect()的函式:

inspect(rule1[1:5])

執行結果如下,

lhs=>rhs 代表買左邊也會買右邊的意思,而支持度與信賴度,則分別代表了普遍性與信心水準。

vocus|新世代的創作平台

例如,第一個關聯規則可以解釋為,「若某人單次消費購買的是pot plants=> 也會購買whole milk」

而lift=1.5 > 1,表示了這個規則相當具有正相關。

除此之外,我們也可以針對特定商品產生關連規則。

例如: 用yogurt這個產品來產生一個相關聯的rules

其中%pin%"yog",代表的意思是尋找找商品名稱有 “yog"的品項,

yogurtr1 = subset(rule1,items %pin% "yog")
summary(yogurtr1)
inspect(yogurtr1[1:15])

執行結果:

vocus|新世代的創作平台

關於關聯分析就先講到這裡啦,在資料的世界裡,有太多太多關聯等著我們去挖掘,每個細微的地方,都可能隱藏著商機,這也是為甚麼有越來越多公司花大錢也要進行資料探勘,常見的電影推薦、購物網站商品推薦,其實都是關聯分析的運用。

留言
avatar-img
格蘭特的沙龍
14會員
18內容數
還在為不知道怎麼面試而煩惱嗎? 還在為苦無面試機會而沮喪嗎? 別擔心~讓我們一起面對! 在專題中,我將以自身經驗傳授如何撰寫履歷以及分享面試經驗。
格蘭特的沙龍的其他內容
2023/10/26
嗨!我是格蘭特,歡迎來到軟體工程師面試大哉問! 近二十家公司面試經驗大公開,本篇是系列文的第八篇。 這篇將繼續分享上一篇在遊戲橘子的面試經驗。
Thumbnail
2023/10/26
嗨!我是格蘭特,歡迎來到軟體工程師面試大哉問! 近二十家公司面試經驗大公開,本篇是系列文的第八篇。 這篇將繼續分享上一篇在遊戲橘子的面試經驗。
Thumbnail
2023/07/18
嗨!我是格蘭特,歡迎來到軟體工程師面試大哉問! 近二十家公司面試經驗大公開,本篇是系列文的第七篇。 格蘭特這次要分享的是在遊戲領域中的佼佼者,自產及代理多種知名遊戲的遊戲橘子(Gamania)。 本次機會是由 Headhunter 在 LinkedIn 主動聯繫,職位是資深後端工程師。 由於篇
Thumbnail
2023/07/18
嗨!我是格蘭特,歡迎來到軟體工程師面試大哉問! 近二十家公司面試經驗大公開,本篇是系列文的第七篇。 格蘭特這次要分享的是在遊戲領域中的佼佼者,自產及代理多種知名遊戲的遊戲橘子(Gamania)。 本次機會是由 Headhunter 在 LinkedIn 主動聯繫,職位是資深後端工程師。 由於篇
Thumbnail
2023/04/06
歡迎來到格蘭特的私房好書,本文是專題系列文的第二篇。 因工作上有些事情需要處理,讓這個專題延宕了幾個月,希望大家不要見怪 :D。 今天要與大家一同閱讀的是 Annette Simmons 所著的《你的團隊需要一個會說故事的人》。 作者:Annette Simmons (安奈特.西蒙斯) 出版社:先覺
Thumbnail
2023/04/06
歡迎來到格蘭特的私房好書,本文是專題系列文的第二篇。 因工作上有些事情需要處理,讓這個專題延宕了幾個月,希望大家不要見怪 :D。 今天要與大家一同閱讀的是 Annette Simmons 所著的《你的團隊需要一個會說故事的人》。 作者:Annette Simmons (安奈特.西蒙斯) 出版社:先覺
Thumbnail
看更多
你可能也想看
Thumbnail
上一篇我們有介紹如何爬取Goodinfo的資訊並統計分析,還沒閱讀的朋友建議先行閱讀,再進入此篇章會比較容易上手唷,傳送門如下: 🚪【Google Colab系列】以Goodinfo!為例,統計一段時間內的最高、最低殖利率 為什麼要做資料視覺化? 相信圖文甚至影音箱對於文字來說更為吸引我們進
Thumbnail
上一篇我們有介紹如何爬取Goodinfo的資訊並統計分析,還沒閱讀的朋友建議先行閱讀,再進入此篇章會比較容易上手唷,傳送門如下: 🚪【Google Colab系列】以Goodinfo!為例,統計一段時間內的最高、最低殖利率 為什麼要做資料視覺化? 相信圖文甚至影音箱對於文字來說更為吸引我們進
Thumbnail
正所謂「套件」如其名,Pandas 運算套件在資料處理領域的受歡迎程度完全可與善於賣萌的大熊貓相媲美。當然,Pandas 的名稱其實來自經濟學術語—面板資料 (panel data)。 眾所皆知,金融領域存在巨量的資料處理與分析,而Pandas 運算套件就是當時就職於AQR Capi
Thumbnail
正所謂「套件」如其名,Pandas 運算套件在資料處理領域的受歡迎程度完全可與善於賣萌的大熊貓相媲美。當然,Pandas 的名稱其實來自經濟學術語—面板資料 (panel data)。 眾所皆知,金融領域存在巨量的資料處理與分析,而Pandas 運算套件就是當時就職於AQR Capi
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
在交易千萬別見樹不見林 中示範如何在同一張圖表上加入不同週期的行情走勢,本篇將對MultiCharts初體驗-函式撰寫、MultiCharts初體驗-訊號撰寫 的程式進行改寫,讓程式可以讀取到多週期的K線資料。 在MC中可以用Data1、Data2、⋯⋯、Data99的指定方式,來存取圖表中的數列
Thumbnail
在交易千萬別見樹不見林 中示範如何在同一張圖表上加入不同週期的行情走勢,本篇將對MultiCharts初體驗-函式撰寫、MultiCharts初體驗-訊號撰寫 的程式進行改寫,讓程式可以讀取到多週期的K線資料。 在MC中可以用Data1、Data2、⋯⋯、Data99的指定方式,來存取圖表中的數列
Thumbnail
潛在類別模式(latent class modeling, LCM)和潛在剖面分析(Latent Profile Analysis, LPA)是探討潛在類別變項的統計技術。兩者與因素分析最大的不同在於潛在變項(因素)的形式。本文將介紹潛在類別/剖面/混合分析操作1:找出最佳組數
Thumbnail
潛在類別模式(latent class modeling, LCM)和潛在剖面分析(Latent Profile Analysis, LPA)是探討潛在類別變項的統計技術。兩者與因素分析最大的不同在於潛在變項(因素)的形式。本文將介紹潛在類別/剖面/混合分析操作1:找出最佳組數
Thumbnail
在資料分析領域中,購物籃分析又稱關聯分析,從大量的交易資料中,探勘出在資料間具有相關性的隱藏規則與商業知識。
Thumbnail
在資料分析領域中,購物籃分析又稱關聯分析,從大量的交易資料中,探勘出在資料間具有相關性的隱藏規則與商業知識。
Thumbnail
文章描述了觀察者如何從銷售數量的日線圖中,以及通過歸納統計和經濟理論進行解讀,透過時間統計分析消費者的行為特徵,以及角度數據如何關注臺灣市場的消費。
Thumbnail
文章描述了觀察者如何從銷售數量的日線圖中,以及通過歸納統計和經濟理論進行解讀,透過時間統計分析消費者的行為特徵,以及角度數據如何關注臺灣市場的消費。
Thumbnail
AND、OR、NOT 在試算表函式裡是很方便的函式。我們常用它們來做多條件判斷,搭配 IF、IFS 或常用條件式格式、資料驗證這些功能,來完成比較複雜的邏輯判斷需求。一起來看看!
Thumbnail
AND、OR、NOT 在試算表函式裡是很方便的函式。我們常用它們來做多條件判斷,搭配 IF、IFS 或常用條件式格式、資料驗證這些功能,來完成比較複雜的邏輯判斷需求。一起來看看!
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
在大數據時代,資料為王已介紹如何改寫函式,該函式可以抓取到預設數列以外的數列資料,本篇將利用這個改寫後的函式,進行訊號改寫,讓訊號可以依據長、短週期的數列,進行行情判斷,並依些產生進場訊號。 在策略中,新增二個輸入參數(輸入參數可進行最佳化),以下簡單介紹這二個參數: LongBarCount:
Thumbnail
在大數據時代,資料為王已介紹如何改寫函式,該函式可以抓取到預設數列以外的數列資料,本篇將利用這個改寫後的函式,進行訊號改寫,讓訊號可以依據長、短週期的數列,進行行情判斷,並依些產生進場訊號。 在策略中,新增二個輸入參數(輸入參數可進行最佳化),以下簡單介紹這二個參數: LongBarCount:
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News