歡迎回來「行銷活動效益知多少?顧客回購了嗎?」系列的第三篇文章,本篇文章要跟大家分享如何將「會員消費紀錄資料庫」彙整出後續「資料視覺化」所會使用到的基本元素,雖然稱作是「基本元素」,不過此處的基本元素是從資料庫中萃取出來的精華呢!
前情提要:
在本系列一開始到第二篇文章為止跟大家分享了資料前處理的重要性以及如何在複雜的資料中取出關鍵資料,然後如何將關鍵資料內容建立成一個會員消費紀錄資料庫。
接下來我們就趕緊開始本篇文章的主要內容吧!
若是您還沒有看過系列1、2的文章,可以先回顧一下哦~
行銷活動效益知多少?顧客回購了嗎?-取出關鍵資料-系列 1
行銷活動效益知多少?顧客回購了嗎? -建立會員消費紀錄資料庫-系列 2
一、彙整資料清單
首先,我們需從消費紀錄資料庫中去比對時間後,然後建立2018年1~12月的會員消費資料,並且把每個月份的資料彙整成一個清單,如程式碼1所示。
程式碼1:
# 分類好每個月的資料(哪個會員在第幾個月因為甚麼廣告而購買、第幾次購買)final_2018 = []# 從1月開始蒐集for mon in range(len(original_2018)):# 建立存取【會員】、【廣告代號】、【第幾次購買】之串列original_2018_id = []original_2018_ad = []original_2018_count =[]# 每個會員編號都跑一次 i:不同會員編號 舉例:會員10071970for i in customer_record.keys() :# 舉例:會員10071970 在2018年購買系列1的所有消費紀錄for j in customer_record[i].values() :# 消費紀錄中若開頭為蒐集的該月份則執行下方程式if j.startswith(str(mon+1)+'月'):# 存取該會員編號 舉例:10071970original_2018_id.append(i)print('會員編號:',i)# 存取其廣告代號 舉例:1月_GINEPoriginal_2018_ad.append(j)print('廣告代號:',j)# 存取會員在這筆消費紀錄中是第幾次購買舉例:'1'original_2018_count.append(list (customer_record[i].keys()) [list (customer_record[i].values()).index (j)])print('第幾次購買:',list (customer_record[i].keys()) [list (customer_record[i].values()).index (j)])# 建立DataFrameoriginal_2018_df = pd.DataFrame({'會員':original_2018_id,'廣告代號':original_2018_ad,'第幾次購買':original_2018_count})# 存放到分類12個月的串列之中final_2018.append(original_2018_df)
產出:
將會員消費紀錄資料庫的內容按照每個月份彙整內容,如圖1所示。
如果想查看該月份的資料,一樣可以從月份資料清單中點擊不同月份,下圖同樣以6月份的資料做範例,可以比對一下上一篇文章【行銷活動效益知多少?顧客回購了嗎?-建立會員消費紀錄資料庫(附Python程式碼)-系列2】圖2的內容,我們留下了「會員」、「廣告代號」兩個欄位,同時也新增了「第幾次購買」欄位。
"到目前為止是不是覺得還少了些甚麼呢?"
沒錯!就是少了最重要的元素「利潤」!因此下一個步驟就是要將每筆訂單資料的利潤補上去,使繪圖的資料更加完整。
二、調整資料清單
要怎麼把利潤對應到相符合的訂單資料呢?為了更好釐清以下的步驟,我們用一個例子舉例:
下列有兩份不同的月份資料清單,原本就有利潤欄位的命名為「original_2018」,其中6月的DataFrame則稱作「original_2018–6」,另一個即將要新增利潤欄位的清單名為「final_2018」,其中6月的DataFrame稱作「final_2018–6」。
首先,將original _2018–6中的「廣告代號」項目中的名稱都加上「月份_」在最前面,並且把會員欄位的項目從integer型態轉到string型態,成功完成上述兩項之後,之後檢查original_2018–6(圖12)與final_2018–6(圖11)中的「廣告代號」形式與「會員」形式是否相同。
清單中總共有12個月,我們將使用for迴圈把每個月份都經由上方的方式處理一次,如程式碼2所示。程式碼的產出也是會以清單的方式呈現。
程式碼2:
# 目的:為了跟final_2018去做merge# 補上月份for i in range(len(original_2018)):original_2018[i]['廣告代號'] = str(i+1) + '月_' + original_2018[i]['廣告代號']# 目的:使original_2018 和 final_2018 的會員欄位內容「type」相同# 將original_2018中的會員轉成stringfor i in range(len(original_2018)):original_2018[i]['會員'] = original_2018[i]['會員'].astype(str)print(str(i+1)+'月check!' )
產出:
已在廣告代號欄位補上月份以及轉換完會員欄位型態過後的「original_2018」,如圖3所示。
可再點擊清單中的項目查看資料內容,詳細檢查是否執行成功,如圖4所示。
檢查完畢後,接下來就把original_2018的利潤欄位使用merge的 方式加到final_2018上,如程式碼3所示。
程式碼3:
# 目的:final_2018 1~12月的資料補上相對應的利潤for i in range(len(final_2018)) :# 將original_2018數據中的利潤 依照【會員&廣告代號】去merge到 final_2018上final_2018[i] = final_2018[i].merge(original_2018[i], how='inner', left_on=['會員', '廣告代號'], right_on=['會員', '廣告代號'])# 刪除重複merge到的錯誤final_2018[i] = final_2018[i].drop_duplicates(subset=['訂單時間'])final_2018[i] = final_2018[i].reset_index(drop = True)del final_2018[i]['訂單時間']del final_2018[i]['系列']
產出:
成功與「original_2018」merge後的「final_2018」內容,如圖5所示。
將圖5和圖1比較後,可以看見每個月的資料都新增了利潤欄位。
恭喜各位完成了資料前處理的階段,不過本系列的重頭戲即將在後面登場,也就是「視覺化繪圖」階段以及如何從圖中判斷出甚麼樣的「管理意涵」。
想要知道如何將資料視覺化嗎?
想要知道分析資料視覺化的成果後能帶給公司什麼樣的關鍵消息嗎?
想要知道更多的後續內容嗎?
讓我們繼續看下去!
下一篇文章將會跟各位介紹繪圖想法的說明以及說明繪圖過程的程式碼架構,繼續跟大家分享如何取出資訊中精華中的精華來繪圖!
請點擊下方系列文章連結了解更多!
Thinking smarter makes you work smarter
如果你喜歡我的文章的話,請給我一點拍手~
如果你覺得喜歡又實用的話,請給我更多的拍手!
程式碼:行銷活動效益知多少?顧客回購了嗎?-彙整資料視覺化所需的基本元素-系列3(附Python程式碼)
作者:張友志 (臺灣行銷研究特邀作者)、鍾皓軒(臺灣行銷研究有限公司創辦人)
行銷活動效益知多少?顧客回購了嗎?―取出關鍵資料(附Python 程式碼)-系列1
行銷活動效益知多少?顧客回購了嗎?-建立會員消費紀錄資料庫(附Python程式碼)-系列2
您可能有興趣:
📢TMR為您量身打造「全方位數據課程」
👨🎓熱門Python程式語言結合全新商業思維,快來終生學習不間斷!
【TMR】 X 【 好學校】
👨💼Python商業全系列數位課程👨💼
#行銷人必學實用Python課程
《 Python 0到1 基礎商業數據分析實戰 》
💥 價格 :3188
👉 從0開始:手把手從頭學習,適合完全沒學過的學員
👉 商業應用全台最多:傳授市面上少見的Python實務應用
👉 網路輿情爬蟲演練:網路輿情商務爬蟲技法
👉 競品分析:競爭價值定位圖找出藍海策略
👉 貨架陳列視覺化:解析行銷策略及廣告預算配置方法
🛒 前往購買:https://hahow.in/cr/python0-1
《 顧客分類大師:Python x RFM 會員經營新觀點 》
💥 價格 :2388
🎯 Python X RFM最佳拍檔,輕鬆鎖定潛(錢)在顧客
不需要出門,在家也能學習專業課程,讓你擁有會員經營的新思維!
本課程以五個面向為您的企業,做更深入的健診:
👉 市場面:以最基本的顧客消費資料(頻率、購買次數),將現有顧客區隔分類。
👉 財務面:計算出在每個顧客身上所賺得毛利,在不同客群中的獲利。
👉 行銷面:藉由 RFM 的分析進行行銷預算重新分配。
👉 產品面:觀察在不同客群中,各個產品的銷售狀況。
👉 顧客回購面:分析顧客的購買週期後,進行精準推薦。
🛒 前往購買:https://hahow.in/cr/rfm-model
《 AI 行銷學:用 Python 機器學習創造商業新價值 》
💥 價格 :3888
👉 全台第一門Python機器學習線上課程
👉 教導你快速理解Logistic Regression, XGBoost, Random Forest商務機器學習模型。
👉 建構老闆或主管們看得懂的模型評估指標,讓精準行銷方案更容易被接受且推出
👉 如何利用機器學習找出消費者心中的重要變數及客樣貌與特徵,做到個體及總體的商品推薦?
👉 如何從數以萬計的消費資料中偵測可能的詐欺名單?
🛒 前往購買:https://hahow.in/cr/python-ml
#實用投資分析課程
《 用 Python 打造自己的股票小秘書 》
💥 價格 :4288
👉 打造自動推播機器人,趁著股市最近低迷,找出最適進場點
👉 「到價提醒」功能,大大提升投資便利性
👉 了解Python雲端服務架構,完整的專案流程
👉 孰悉No SQL資料庫操作,未來大數據的基礎
🛒 前往購買:https://hahow.in/cr/stock-secretary
#好學校企業百大課程之一:
《台科 EMBA 年年爆滿的一門 Word 課(A系列)》
💥 價格 :950
👉 系統性學習Office軟體功能,教您別人不知道的快捷鍵
👉 調整不受控制的行距與精準對齊排版
👉 一鍵轉換Word到Excel
👉 有效率處理企畫書、畢業論文、小組報告、公文等
🛒 前往購買:https://hahow.in/cr/tmr-word1
《 台科 EMBA 年年爆滿的一門 Word 課(B+C系列)》
💥 價格 :1,050
👉 傳授獨家快捷鍵字典
👉 分享好用的大綱模式,讓文章處理更有效率
👉 建立大綱模式、多層次清單、目錄與圖表目錄,掌握文件編輯規則
👉 優化文章的邏輯架構
🛒 前往購買:https://hahow.in/cr/tmr-word2
— — — — — — — — — — — — — — — — -
【TMR】 X 【工研院】
🏭工業4.0大數據智慧應用課程🏭
製程數據資料 X 資料科學,
為您開啟工業人工智慧領域的大門!
👉全球前十大智慧製程案例實戰
👉專業講師手把手帶您入門製程資料處理分析
👉課後完整模組心法讓您通通帶回家
💥價格 : 2,800
🏃趕緊手刀前往購買:https://bit.ly/39koNbn
— — — — — — — — — — — — — — — — -
2020課程地圖
💪 點我看更多
🏆 國內第一本行銷資料科學專書
💪 點我看書本資訊
🏆 國內第一本行銷資料科學 ” 實作 ” 專書
💪 點我看書本資訊
🏆國內第一本「股票小祕書」專書
附上購書網址~ 國外的朋友也可以使用博客來與金石堂的通路轉運到國外哦!