航空公司客户价值分析
+++
1、了解航空公司现状与客户价值分析
-
1、行业内竞争
- 民航的竞争除了三大航空公司之间的竞争之外,还将加入新崛起的各类小型航空公司、民营航空公司,甚至国外航空巨头。航空产品生产过剩,产品同质化特征愈加明显,于是航空公司从价格、服务间的竞争逐渐转向对客户的竞争。
-
2、行业外竞争
- 随着高铁、动车等铁路运输的兴建,航空公司收到巨大冲击。
-
3、航空公司的数据分析
- 目前航空公司已积累了大量的会员档案信息和其乘坐航班记录。以2014-03-31为结束时间,选取宽 度为两年的时间段作为分析观测窗口,抽取观测窗口内有乘机记录的所有客户的详细数据形成历史数 据,44个特征,总共62988条记录。数据如air_data.csv所示!
+++
1.1、根据航空公司的数据特征进行下列说明:
1.2、结合目前航空公司的数据情况,可以实现以下目标:
-
a、先对航空数据进行数据清洗和处理。
-
a、借助处理好的航空公司客户数据,对客户进行分群。
-
b、然后对不同的客户类别进行特征分析,比较不同类别客户的客户价值。
-
c、最后对不同价值的客户类别提供个性化服务,制定相应的营销策略。
1.3、认识客户价值分析
全球经济环境和市场环境已经悄然改变,企业的业务逐步从以产品为主导转向以客户需 求为主导。一种全新的“以客户为中心”的业务模式正在形成并被提升到前所未有的高度。 然而与客户保持关系需要花费成本,企业所拥有的客户中只有一部分能为企业带来利润。企 业的资源也是有限的,忽视高潜力的客户而对所有客户都提供同样的服务,将使企业的资源 无法发挥其最大效用去创造最大化的利润。任何企业要想生存和发展,都必须获得利润,追 求利润最大化是企业生存和发展的宗旨之一。所以企业不可能也不应该和所有的客户都保持 同样的关系。客户营销战略的倡导者 Jay& Adam Curry 从对国外数百家公司进行的客户营销 实施的经验中提炼了如下经验:
- a、公司收入的 80%来自顶端的 20%的客户。
- b、20%的客户其利润率为 100%。
- c、90%以上的收入来自现有客户。
- d、大部分的营销预算经常被用在非现有客户上。
- e、5%~30%的客户在客户金字塔中具有升级潜力。
- f、客户金字塔中的客户升级 2%,意味着销售收入增加 10%,利润增加 50。
注意
:这些经验也许并不完全准确,但是它揭示了新时代客户分化的趋势,也说明了对客户价值分析 的迫切性和必要性。
众多的企业管理者虽然知道客户价值分析的重要性,但对如何进行客户价值分析却知之 甚少。如何全方位、多角度地考虑客户价值因素,进行有效的客户价值分析,这是摆在所有 企业面前需要认真思索的一个问题。
只有甄选出有价值的客户并将精力集中在这些客户身上, 才能有效地提升企业的竞争力,使企业获得更大的发展。 在客户价值分析领域,最具影响力并得到实证检验的理论与模型有客户终生价值理论客 户价值金字塔模型、策略评估矩阵分析法和 RFM 客户价值分析模型等。本章将运用改进的客 户价值 RFM 模型进行分析。
1.4、了解航空公司的客户价值分析的步骤流程
1.5、客户价值分析大概流程
- 1、抽取航空公司 2012 年 4 月 1 日至 2014 年
- 2、对抽取的数据进行数据清洗、特征构建和标准化等操作。
- 3、基于 RFM 模型,使用 K-Means 算法进行客户分群。
- 4、通过绘制雷达图来直观的认识不同群体的特征占比情况。
- 5、针对模型结果得到不同价值的客户,采用不同的营销手段,提供定制化的服务。
2、航空公司客户数据处理
2.1、观察数据
航空公司客户原始数据存在少量的缺失值和异常值,需要清洗后才能用于分析。同时由 于原始数据的特征过多,不便直接用于客户价值分析,因此需要对特征进行筛选,挑选出衡量客户价值的关键特征。
2.2、数据如何处理?
-
处理数据缺失值与异常值
通过对数据观察发现原始数据中存在票价为
空值
、
票价最小值为 0
、
折扣率最小值为 0 总飞行千米数大于 0 的记录
。票价为空值的数据可能是由于不存在乘机记录造成的。其他的 数据可能是由于客户乘坐 0 折机票或者积分兑换造成的。由于原始数据量大,这类数所占比 例较小,对问题影响不大,因此对其进行丢弃处理。具体处理方法如下:
- a、导入该项目所需要的库
# 导入工具包
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
- b、加载原始数据。
#加载原始数据
airline_data = pd.read_csv("../datas/air_data.csv",encoding="gb18030") # 导入航空数据
print("原始数据的形状为:",airline_data.shape)
- c、丢弃票价为空的记录。
## 去除票价为空的记录
exp1 = airline_data["SUM_YR_1"].notnull()
exp2 = airline_data["SUM_YR_2"].notnull()
exp = exp1 & exp2
airline_notnull = airline_data.loc[exp,:]
print('删除缺失记录后数据的形状为:',airline_notnull.shape)
- d、丢弃票价为 0、平均折扣率不为 0、总飞行千米数大于 0
#只保留票价非零的,或者平均折扣率不为0且总飞行公里数大于0的记录。
index1 = airline_notnull['SUM_YR_1'] != 0
index2 = airline_notnull['SUM_YR_2'] != 0
index3 = (airline_notnull['SEG_KM_SUM']> 0) & (airline_notnull['avg_discount'] != 0)
airline = airline_notnull[(index1 | index2) & index3]
print('删除异常记录后数据的形状为:',airline.shape)
到此数据处理部分完成!
(2)、航空客户价值分析的 LRFMC 模型–构建LRFMC特征
提取特征值是有一列:L —>会员入会时间和窗口结束之间的月数
- 转化为时间数据,时间相减,就可以构建 L 列特征值
# 选取需求的五个特征
airline_selection = airline[["FFP_DATE", "LOAD_TIME",
"FLIGHT_COUNT", "LAST_TO_END",
"avg_discount", "SEG_KM_SUM"]]
# 构建L特征