数据分析与挖掘实战-航空公司客户价值分析
生活随笔
收集整理的這篇文章主要介紹了
数据分析与挖掘实战-航空公司客户价值分析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
航空公司客戶價值分析
- 項目背景
- 信息時代的到來注定營銷焦點從產品中心轉到了用戶中心,客戶關系管理成為企業的核心問題。
- 客戶關系管理的關鍵問題則是客戶分類,通過分類區分客戶價值的有無和高低,針對不同類別的用戶制定個性化服務方案,采取不同營銷方案,集中營銷資源于高價值用戶。
- 對于航空公司而言,建立合理的客戶價值評估模型,對客戶進行分群,進行分價值處理是必要的。
- 挖掘目標
- 借助航空公司數據,進行客戶分類。
- 對不同客戶類別進行特征分析,比較不同類別的客戶價值。
- 對不同價值的客戶提供個性化服務,制定相應的營銷策略。
- 分析過程
- 目標是用戶價值識別,一般客戶價值識別最廣泛的模型是三個指標(最近消費時間間隔(Recency)、消費頻率(Frequency)和消費金額(Monetary))來進行客戶細分,識別高價值用戶,這就是RFM模型。
- 這里需要注意,顯然使用消費金額是不合理的(一個長距離的普通艙用戶和一個短距離的高級艙用戶價值顯然不一樣)。所以采用累積里程M和乘坐艙位對應的折扣系數的平均值C兩個指標代替消費金額。
- 此外,這種會員制的公司一般入會時間也影響價值判斷,所以引入客戶關系長度L,作為另一指標。
- 最終這個模型的指標5個分別是客戶關系長度L、消費時間間隔R、消費頻率F、飛行里程M、折扣系數平均數C。
- 處理過程
- 顯然,得到了需要的處理指標了,我們就要進行分析,如果使用傳統的RFM的屬性分箱方法(依據平均值分析),可以識別,但是分類結果群太多,企業不可能花費這么多的針對性營銷成本。
- 所以很明顯,這是一個聚類分析的案例,不妨使用K-Means聚類分析。
- 數據獲取
- 數據給出。
- 數據探索 - 主要目標發現缺失值和異常值(如票價為0,可能原因是兌換或者0折)
- 數據預處理
- 數據清洗
- 顯然,通過探索已經得知數據存在異常值、缺失值,但是原始數據量太大,這類異常數據占比太少,直接丟棄即可。
- 屬性規約
- 顯然,原始數據中的數據屬性太多了,根據需求指標,刪除不相干的或者弱相關或者冗余的屬性列。
- 數據變換
- 屬性構造
- 構造出不存在的指標
- L = LOAD_TIME - FFP_DATE
- R = LAST_TO_END
- F = FLIGHT_COUNT
- M = SEG_KM_SUM
- C = AVG_DISCOUNT
- 數據標準化
- 不同屬性之間取值范圍差距過大,理論上影響程度應該一致。
- 數據清洗
- 數據挖掘建模
- 聚類分群(根據5個指標)
- 采用K-Means聚類分群
- 特征分析每個群,進行群組排序(依據價值)
- 不難看出,基本上每一類都有明顯的優勢和弱勢特征,企業需要做的就是根據這些修改營銷方案。
- 后續處理
- 根據用戶特征區間,分策略進行營銷。
- 補充說明
- 參考書《Python數據分析與挖掘》
這里只列出建模代碼,預處理代碼可以查看我的github。
# -*- coding: UTF-8 -*- ''' 使用K-Means進行聚類 ''' import pandas as pd from sklearn.cluster import KMeans import numpy as np import matplotlib.pyplot as pltdef leida(data, kmodel):'''畫出雷達圖:return:'''plt.rcParams['font.sans-serif'] = ['SimHei']plt.rcParams['axes.unicode_minus'] = Falselabels = data.columnsprint(labels)k = 5plot_data = kmodel.cluster_centers_color = ['b', 'g', 'r', 'c', 'y']angles = np.linspace(0, 2*np.pi, k, endpoint=False)plot_data = np.concatenate((plot_data, plot_data[:, [0]]), axis=1)angles = np.concatenate((angles, [angles[0]]))fig = plt.figure()# polar參數ax = fig.add_subplot(111, polar=True)for i in range(len(plot_data)):# 畫線ax.plot(angles, plot_data[i], 'o-', color=color[i], label=u'客戶群'+str(i), linewidth=2)ax.set_rgrids(np.arange(0.01, 3.5, 0.5), np.arange(-1, 2.5, 0.5), fontproperties="SimHei")ax.set_thetagrids(angles * 180/np.pi, labels, fontproperties="SimHei")plt.legend(loc=4)plt.show()if __name__ == '__main__':inputfile = './data/data_standard.csv'k = 5# 讀取數據并進行聚類分析data = pd.read_csv(inputfile, encoding='utf-8')# 調用k-means算法,進行聚類分析# n_jobs是并行數,一般等于CPU數較好kmodel = KMeans(n_clusters=k, n_jobs=4)kmodel.fit(data)# 查看聚類中心kmodel.cluster_centers_# 查看各樣本對應的類別kmodel.labels_leida(data, kmodel)?
總結
以上是生活随笔為你收集整理的数据分析与挖掘实战-航空公司客户价值分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安卓重构系列-01使用Kotlin开发第
- 下一篇: 数据分析与挖掘实战-中医证型关联规则挖掘