溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

數(shù)據(jù)庫中經(jīng)典的同期群舉例分析

發(fā)布時(shí)間:2021-12-08 09:30:45 來源:億速云 閱讀:325 作者:iii 欄目:大數(shù)據(jù)

這篇文章主要講解了“數(shù)據(jù)庫中經(jīng)典的同期群舉例分析”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“數(shù)據(jù)庫中經(jīng)典的同期群舉例分析”吧!

理論回顧

同期群分析是數(shù)據(jù)分析中一個(gè)hin經(jīng)典的思維,核心是將用戶按初始行為的發(fā)生時(shí)間,劃分為不同的群組,進(jìn)而分析相似群組的行為如何隨時(shí)間變化而變化。一般是通過像這樣的留存表來實(shí)現(xiàn):數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
每一行,代表當(dāng)月新增客戶,在接下來幾個(gè)月的留存情況。

通過橫向?qū)Ρ?/code>,能夠?qū)?strong>客戶留存和生命周期有初步的認(rèn)識?;?code>縱向觀察,可以發(fā)現(xiàn)不同期客戶,留存情況的差異,以反推該期引入的客戶是否精準(zhǔn)。

這個(gè)表看起來簡單明晰,也有一些成熟的工具能夠?qū)崿F(xiàn),但是,真要基于訂單數(shù)據(jù)用Python來實(shí)現(xiàn),還是要絞一番腦汁的。

數(shù)據(jù)概覽

首先,導(dǎo)入訂單數(shù)據(jù),順帶看一看源數(shù)據(jù)長什么樣子:數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
后續(xù)分析會用到的關(guān)鍵字段有客戶昵稱,付款時(shí)間,訂單狀態(tài)和支付金額。

再查看數(shù)據(jù)量和缺失情況:數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
訂單共計(jì)42713行,除付款時(shí)間外,其他都是完整的(不含缺失值)。格式整體規(guī)整,付款時(shí)間為datetime格式,購買金額和數(shù)量則是數(shù)值型。

數(shù)據(jù)清洗

清洗的重點(diǎn)在于搞清楚為什么會有那么多付款時(shí)間是缺失的。我們先篩選出付款時(shí)間為空值的行,一探究竟:數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
貌似,缺失付款時(shí)間的數(shù)據(jù),訂單狀態(tài)主要是交易失敗。這里做一個(gè)初步推斷,之所以缺失付款時(shí)間,是因?yàn)闆]有產(chǎn)生實(shí)際交易。
數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
果然,缺失付款時(shí)間的訂單都是交易失敗狀態(tài),而完整的數(shù)據(jù)則是交易成功。接下來,只需要篩選出交易成功的訂單就好,40339行數(shù)據(jù),就是同期群分析的主戰(zhàn)場。

思路剖析

再讓最開始的留存表刷一下存在感:

數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
直接思考怎么樣一次性生成這張表,著實(shí)費(fèi)頭發(fā)。更合理的方式是用搭積木的思維來拆解這張表。這張表的每一行,代表一個(gè)同期群,而他們的本質(zhì)邏輯是一樣的。

  • 首先計(jì)算出當(dāng)月新增的客戶數(shù),并記錄客戶昵稱。

  • 然后拿這部分客戶,分別去和后面每個(gè)月購買的客戶做匹配,并統(tǒng)計(jì)有多少客戶出現(xiàn)復(fù)購(留存)

只要我們計(jì)算出每個(gè)月的新增客戶和對應(yīng)留存情況,把這些數(shù)據(jù)拼接在一起,就得到了夢寐以求的同期群留存表。

單月實(shí)現(xiàn)

循著上一步的思路,問題變得簡單起來,實(shí)現(xiàn)一個(gè)月的計(jì)算邏輯,其他月份套用即可。給同期群留存表添加一列標(biāo)記數(shù)據(jù)歸屬與哪個(gè)年月。
數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
我們以2019年10月的數(shù)據(jù)為樣板,實(shí)現(xiàn)單行的同期群分析。數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
顯而易見,2019年10月份一共有7336位客戶,購買了8096筆訂單。

接下來,我們要計(jì)算的是每個(gè)月的新增客戶數(shù),這個(gè)新增,是需要和之前的月份遍歷匹配來驗(yàn)證的,2019年10月之前的客戶就是2019年9月的數(shù)據(jù):數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
和歷史數(shù)據(jù)做匹配,驗(yàn)證并篩選出2019年10月新增的客戶數(shù):
數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
然后,和10月之后每個(gè)月的客戶昵稱進(jìn)行匹配,計(jì)算出每個(gè)月的留存情況,把最開始的當(dāng)月新增客戶加入到列表:

數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
2019年10月新增客戶7083位,次月(11月)留存539人,隨后有所降低,而到了2020年2月留存回購客戶數(shù)較上月有小幅上升。

終版代碼

#引入時(shí)間標(biāo)簽month_lst = order['時(shí)間標(biāo)簽'].unique()final = pd.DataFrame()for i in range(len(month_lst) - 1):#構(gòu)造和月份一樣長的列表,方便后續(xù)格式統(tǒng)一count = [0] * len(month_lst)#篩選出當(dāng)月訂單,并按客戶昵稱分組target_month = order.loc[order['時(shí)間標(biāo)簽'] == month_lst[i],:]target_users = target_month.groupby('客戶昵稱')['支付金額'].sum().reset_index()#如果是第一個(gè)月份,則跳過(因?yàn)椴恍枰蜌v史數(shù)據(jù)驗(yàn)證是否為新增客戶)if i == 0:new_target_users = target_month.groupby('客戶昵稱')['支付金額'].sum().reset_index()else:#如果不是,找到之前的歷史訂單history = order.loc[order['時(shí)間標(biāo)簽'].isin(month_lst[:i]),:]#篩選出未在歷史訂單出現(xiàn)過的新增客戶new_target_users = target_users.loc[target_users['客戶昵稱'].isin(history['客戶昵稱']) == False,:]#當(dāng)月新增客戶數(shù)放在第一個(gè)值中count[0] = len(new_target_users)#以月為單位,循環(huán)遍歷,計(jì)算留存情況for j,ct in zip(range(i + 1,len(month_lst)),range(1,len(month_lst))):#下一個(gè)月的訂單next_month = order.loc[order['時(shí)間標(biāo)簽'] == month_lst[j],:]next_users = next_month.groupby('客戶昵稱')['支付金額'].sum().reset_index()#計(jì)算在該月仍然留存的客戶數(shù)量isin = new_target_users['客戶昵稱'].isin(next_users['客戶昵稱']).sum()count[ct] = isin#格式轉(zhuǎn)置result = pd.DataFrame({
   
   
   month_lst[i]:count}).T#合并final = pd.concat([final,result])final.columns = ['當(dāng)月新增','+1月','+2月','+3月','+4月','+5月']

數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
不過,真實(shí)數(shù)據(jù)是留存率形式體現(xiàn),再稍做加工即可:
數(shù)據(jù)庫中經(jīng)典的同期群舉例分析
終于,大功告成!實(shí)現(xiàn)了我們所希望的同期群分析表。簡單掃兩眼,可以發(fā)現(xiàn):

  • 橫向觀察,次月流失嚴(yán)重,表現(xiàn)最好的月份次月留存也只有12%,隨后平穩(wěn)降低,穩(wěn)定在6%左右。

  • 縱向?qū)Ρ龋?019年當(dāng)月新增客戶最少,僅有2042位,但人群相對精準(zhǔn),留存率表現(xiàn)優(yōu)于其他月份。

感謝各位的閱讀,以上就是“數(shù)據(jù)庫中經(jīng)典的同期群舉例分析”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對數(shù)據(jù)庫中經(jīng)典的同期群舉例分析這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI