時(shí)間:2021/1/11-2021/1/18 下班后時(shí)間
學(xué)習(xí)內(nèi)容:第四階段可視化 第四章節(jié)案例
心得體會(huì):
1.學(xué)習(xí)案例不要覺得麻煩就偷懶,代碼還是要自己完全手敲一遍,邊梳理邊總結(jié)歸納,這樣才能最大程度地掌握乃至熟練
2.對(duì)于pandas基礎(chǔ)的有一定掌握了,能夠回憶起知識(shí)點(diǎn),但運(yùn)用時(shí)仍錯(cuò)誤頻發(fā)遂跟,比如寫錯(cuò)字符,加不加s之類的細(xì)節(jié)問題婴渡,這塊之后要結(jié)合就業(yè)班數(shù)據(jù)庫的練習(xí)案例多加練習(xí)
后續(xù)目標(biāo):把后續(xù)案例做完之后對(duì)于python部分做一個(gè)知識(shí)點(diǎn)總結(jié)歸納幻锁,把之前有問題覺得很難理解的知識(shí)點(diǎn)查漏補(bǔ)缺鞏固一下,結(jié)合其他如題目一起練習(xí)
業(yè)務(wù):利用現(xiàn)有工作的可視化部分梳理業(yè)務(wù)體系边臼,在工作中鍛煉業(yè)務(wù)敏感性哄尔,后期開始把業(yè)務(wù)書籍看完
注:此文章僅為練習(xí)項(xiàng)目,僅為初學(xué)者用于練習(xí)pandas相關(guān)操作柠并,流程梳理岭接,而不作為正式報(bào)告。
一臼予、導(dǎo)入數(shù)據(jù)
導(dǎo)入模塊 import.....
讀取文件鸣戴,根據(jù)文件情況設(shè)置別名,分隔符等變量 pd.read_....(文件名.....),本文將列名設(shè)置為user_id,order_dt,order_products以及order_amount粘拾,其含義分別如下所示
二窄锅、數(shù)據(jù)處理
數(shù)據(jù)預(yù)處理/數(shù)據(jù)觀察
查看前幾行(數(shù)據(jù)太多看不全時(shí))
查看各列數(shù)據(jù)類型
查看各列數(shù)據(jù)的描述統(tǒng)計(jì)值
通過以上的預(yù)處理觀察可知該數(shù)據(jù)源數(shù)據(jù)類型存在不合理的情況,如日期類型不標(biāo)準(zhǔn)半哟,應(yīng)改為標(biāo)準(zhǔn)的日期格式酬滤,同時(shí)新增一列把日期的月份單獨(dú)提取出來签餐,處理如下:
三寓涨、分析與可視化
PART 1 月消費(fèi)分析
月消費(fèi)分析首先要將各月的消費(fèi)總金額盯串,消費(fèi)次數(shù)、消費(fèi)產(chǎn)品件數(shù)戒良、消費(fèi)人次匯總出來(可單獨(dú)也可一起匯總体捏,為方便一般一起匯總),然后將匯總后的數(shù)據(jù)導(dǎo)入excel糯崎,導(dǎo)入powerBI進(jìn)行可視化相關(guān)操作
匯總數(shù)據(jù)
數(shù)據(jù)匯總可以分別和一起匯總几缭,分別匯總先用groupby按月匯總導(dǎo)入進(jìn)去的表,然后將要用到的列單獨(dú)匯總沃呢,如求和等
一起匯總使用agg函數(shù)+列表指定各字段匯總的統(tǒng)計(jì)值即可
第三種匯總方式可以使用數(shù)據(jù)透視表
加入沒有包含的列
由于user_id一列存在重復(fù)現(xiàn)象年栓,因此消費(fèi)人數(shù)并不等于消費(fèi)次數(shù)(同一人可能消費(fèi)多次),需要將‘消費(fèi)次數(shù)’這一列加入到該表格當(dāng)中
將user_id去重后進(jìn)行計(jì)數(shù)薄霜,加入到表中成為‘消費(fèi)人數(shù)’字段
數(shù)據(jù)處理與導(dǎo)出
為方便作圖某抓,避免將month作為時(shí)間戳格式,將其轉(zhuǎn)化為str列
使用to_excel函數(shù)導(dǎo)出到指定路徑進(jìn)行作圖
PART 2 用戶消費(fèi)分析
月消費(fèi)分析首先要將各月的用戶消費(fèi)金額/消費(fèi)次數(shù)描述統(tǒng)計(jì)惰瓜,消費(fèi)次數(shù)與消費(fèi)金額關(guān)系否副、消費(fèi)金額分布圖、消費(fèi)次數(shù)分布圖崎坊、累計(jì)消費(fèi)金額占比匯總出來备禀,然后將匯總后的數(shù)據(jù)導(dǎo)入excel,導(dǎo)入powerBI進(jìn)行可視化相關(guān)操作
消費(fèi)金額/消費(fèi)次數(shù)描述統(tǒng)計(jì)
用戶聚合groupby
分組后求和得到用戶消費(fèi)金額和用戶消費(fèi)次數(shù)
將分組求和后的describe得到描述性統(tǒng)計(jì)
消費(fèi)金額與消費(fèi)次數(shù)關(guān)系
將第二步中求出的結(jié)果導(dǎo)出到excel中奈揍,導(dǎo)入powerBI進(jìn)行繪圖曲尸,得到如下圖表
消費(fèi)金額/消費(fèi)次數(shù)分布圖
消費(fèi)金額分布圖就是直方圖,統(tǒng)計(jì)各范圍消費(fèi)頻數(shù)的分布多少男翰,消費(fèi)次數(shù)分布圖同理另患,只是把order_amount改為order_products繪制的主要思路是:
將用戶消費(fèi)金額進(jìn)行匯總
將每個(gè)用戶的消費(fèi)金額轉(zhuǎn)化為范圍,利用pd.cut(數(shù)據(jù)奏篙,bins=份數(shù))
將第二步轉(zhuǎn)化的范圍轉(zhuǎn)化為值柴淘,作為直方圖的節(jié)點(diǎn)(利用pd.cut中加上labels)
銷售累積圖
該圖用于表示消費(fèi)金額與人群占比的關(guān)系,如二八原則秘通,百分之二十的客戶消費(fèi)了百分之80左右的金額为严,該圖的繪制步驟有以下幾步:
求出用戶匯總后的消費(fèi)金額,按照消費(fèi)金額進(jìn)行排序(注意一定要排序肺稀,否則畫出來的圖變化不均勻)
使用cumsum()函數(shù)進(jìn)行累計(jì)求和第股,使用sum()函數(shù)可進(jìn)行求和,cumsum()/sum()就是銷售占比
重置索引后to_excel()導(dǎo)出即可
首次購買/最后一次購買
首次購買主要描述用戶首次購買日期的人數(shù)话原,用于發(fā)現(xiàn)購買的趨勢(shì)變化夕吻,最后一次購買同理诲锹,把min()換成max()即可主要有以下步驟:
按照用戶id匯總,并求出每列最小值
找到需要的列涉馅,進(jìn)行value_counts計(jì)數(shù)
重置索引归园、更改列名等
輸出到excel進(jìn)行繪圖
新老客占比
新客只僅購買了一次的用戶,老客只購買了多次的用戶稚矿,新老客占比分析主要有以下步驟:
同時(shí)求出最早購買時(shí)間和最后一次購買時(shí)間
比較兩者是否相等
把相等的數(shù)量求出來庸诱,即可得到新客老客數(shù)量占比等
每月新客占比
將用戶ID和月份兩列進(jìn)行聚合
求首次和最后一次購買日期,比較兩者是否相同晤揣,相同定義為新用戶
將比較結(jié)果列進(jìn)行聚合桥爽,取出新用戶,進(jìn)行計(jì)數(shù)得到新老用戶匯總
PART 3 用戶分層
用戶分層是典型的數(shù)據(jù)分析方法昧识,主要在于按照條件將用戶劃分為不同群體钠四,便于針對(duì)不同用戶指定相應(yīng)策略,用戶分層主要使用RFM模型跪楞,從最近一次消費(fèi)缀去、消費(fèi)頻率、消費(fèi)金額三個(gè)方面來講用戶劃分為不同群體习霹,本文RFM模型構(gòu)建主要有一下幾點(diǎn):
RFM模型
將R/F/M列的初始字段找出來
進(jìn)行相應(yīng)數(shù)據(jù)處理與格式轉(zhuǎn)換
將列名改名為R/F/M
將每列與各自平均值相減得到大小朵耕,貼標(biāo)簽,大于0為1淋叶,小于0為0
將上一步貼的標(biāo)簽合起來RFM阎曹,再次定義為不同客戶的標(biāo)簽
設(shè)置顏色屬性,便于畫圖煞檩,導(dǎo)出
新客处嫌、老客、活躍斟湃、沉睡熏迹、回流用戶分析
1用數(shù)據(jù)透視表求出每個(gè)月的購買次數(shù)
2將購買次數(shù)分為有無購買兩類,分別標(biāo)記為1和0
3定義函數(shù)判斷不同情況用戶類型
4將有無購買替換為不同的用戶類型
5根據(jù)用戶類型統(tǒng)計(jì)每類用戶每個(gè)月的數(shù)量
6將數(shù)量轉(zhuǎn)化為每月占比
7數(shù)據(jù)清洗后導(dǎo)出
PART 4 用戶購買周期凝赛、用戶生命周期分析
用戶購買周期(按訂單)
通過訂單的間隔來看用戶購買規(guī)律注暗,統(tǒng)計(jì)各訂單間隔有多少頻數(shù)分布,以探索用戶購買周期的規(guī)律墓猎,主要有以下幾步:
1訂單日期減去偏移后的訂單日期捆昏,找到相鄰購買時(shí)間的間隔
2將時(shí)間間隔去除單位
3將時(shí)間間隔切割為若干份,轉(zhuǎn)化為范圍毙沾,再將范圍貼標(biāo)簽得到數(shù)值節(jié)點(diǎn)
4導(dǎo)出得到excel格式繪圖
用戶生命周期分析
用戶生命周期與購買周期基本相似骗卜,只是用戶生命周期是最大購買時(shí)間和最小購買時(shí)間相減
PART 5 復(fù)購率、回購率分析
復(fù)購率與回購率是用戶數(shù)據(jù)常見分析指標(biāo),用來說明用戶購買黏性寇仓,對(duì)其分析有助于更好提升運(yùn)營(yíng)效果举户。
復(fù)購率分析
復(fù)購率 =?一個(gè)月內(nèi)重復(fù)購買的用戶/購買的總用戶
復(fù)購率的計(jì)算步驟如下:
按照用戶id數(shù)據(jù)透視表統(tǒng)計(jì)出每個(gè)月的用戶購買次數(shù)
定義復(fù)購:只要數(shù)據(jù)大于1 就為復(fù)購,其余有兩種情況遍烦,有數(shù)據(jù)但是不大于1俭嘁,用0表示,直接沒有數(shù)據(jù)(沒購買過)用NaN表示
利用sum和count的特性:sum不計(jì)算NaN,而count計(jì)算乳愉,得到復(fù)購率
數(shù)據(jù)轉(zhuǎn)換后導(dǎo)出
回購率
回購率=?之前購買過一段時(shí)間再次購買(可能在兩個(gè)月內(nèi))的用戶/當(dāng)月購買的總用戶
回購率的計(jì)算上與復(fù)購率的邏輯基本上差不多兄淫,都是定義規(guī)則后屯远,把數(shù)據(jù)轉(zhuǎn)化為分類蔓姚,然后用sum和count的比值求出回購占比