已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
利用 K Means 聚类进行航空公司客户价值分析 1 背景与挖掘目标 1 1 背景航空公司业务竞争激烈 从 产品中心转化为客户中心 针对不同类型客户 进行精准 营销 实现利润最大化 建立客户价值评估模型 进行客 户分类 是解决问题的办法 1 2 挖掘目标借助航空公司客户 数据 对客户进行分类 对不同的客户类别进行特征分析 比较不同类客户的客户价值对不同价值的客户类别提供个 性化服务 制定相应的营销策略 详情数据见数据集内容 中的 air data csv 和客户信息属性说明 2 分析方法与过程 2 1 分析方法首先 明确目标是客户价值识别 识别客户价值 应用最广泛的模型是三个指标 消费时间间隔 Recency 消费频率 Frequency 消费金额 Monetary 以上指标简 称 RFM 模型 作用是识别高价值的客户消费金额 一般表 示一段时间内 消费的总额 但是 因为航空票价收到距 离和舱位等级的影响 同样金额对航空公司价值不同 因 此 需要修改指标 选定变量 舱位因素 舱位所对应的折 扣系数的平均值 C 距离因素 一定时间内积累的飞行里程 M 再考虑到 航空公司的会员系统 用户的入会时间长 短能在一定程度上影响客户价值 所以增加指标 L 入会时 间长度 客户关系长度总共确定了五个指标 消费时间间隔 R 客户关系长度 L 消费频率 F 飞行里程 M 和折扣系数 的平均值 C 以上指标 作为航空公司识别客户价值指标 记为 LRFMC 模型如果采用传统的 RFM 模型 如下图 它 是依据 各个属性的平均值进行划分 但是 细分的客户 群太多 精准营销的成本太高 综上 这次案例 采用聚类的办法进行识别客户价值 以 LRFMC 模型为基础本案例 总体流程如下图 2 2 挖掘步骤从航空公司 选择性抽取与新增数据抽取 形 成历史数据和增量数据对步骤一的两个数据 进行数据探 索性分析和预处理 主要有缺失值与异常值的分析处理 属性规约 清洗和变换利用步骤 2 中的已处理数据作为建 模数据 基于旅客价值的 LRFMC 模型进行客户分群 对各 个客户群再进行特征分析 识别有价值客户 针对模型结 果得到不同价值的客户 采用不同的营销手段 指定定制 化的营销服务 或者针对性的优惠与关怀 重点维护老客 户 2 3 数据抽取选取 2014 03 31 为结束时间 选取宽度 为两年的时间段 作为观测窗口 抽取观测窗口内所有客 户的详细数据 形成历史数据对于后续新增的客户信息 采用目前的时间作为重点 形成新增数据 2 4 探索性分析本 案例的探索分析 主要对数据进行缺失值和异常值分析 发现 存在票价为控制 折扣率为 0 飞行公里数为 0 票 价为空值 可能是不存在飞行记录 其他空值可能是 飞 机票来自于积分兑换等渠道 查找每列属性观测值中空值 的个数 最大值 最小值的代码如下 import pandas as pd datafile r home kesci input date27730 air data csv 航空原始 数据 第一行为属性标签 resultfile r home kesci work test xls 数据探索结果表 data pd read csv datafile encoding utf 8 读取原始数据 指定 UTF 8 编码 需要用文本编辑器将数据装换为 UTF 8 编码 explore data describe percentiles include all T 包括 对数据的基本描述 percentiles 参数是指定计算多少的分位 数表 如 1 4 分位数 中位数等 T 是转置 转置后更方 便查阅 print explore explore null len data explore count describe 函数自动 计算非空值数 需要手动计算空值数 explore explore null max min explore columns u 空值数 u 最大值 u 最小值 表头重命 名 print 以 下是处理后数据 print explore 这里只选取部分探索结果 describe 函数自动计算的字段有 count 非空值数 unique 唯一值数 top 频数最高者 freq 最高频数 mean 平均值 std 方差 min 最小值 50 中位 数 max 最大值 以下是处 理前数据 count unique top freq mean std MEMBER NO 62988 NaN NaN NaN 31494 5 18183 2 FFP DATE 62988 3068 2011 01 13 184 NaN NaN FIRST FLIGHT DATE 62988 3406 2013 02 16 96 NaN NaN GENDER 62985 2 男 48134 NaN NaN FFP TIER 62988 NaN NaN NaN 4 10216 0 WORK CITY 60719 3310 广 州 9385 NaN NaN WORK PROVINCE 59740 1185 广东 17507 NaN NaN WORK COUNTRY 62962 118 CN 57748 NaN NaN 以下是处 理后数据 空值数 最大值 最 小值 MEMBER NO 0 62988 1 FFP DATE 0 NaN NaN FIRST FLIGHT DATE 0 NaN NaN GENDER 3 NaN NaN FFP TIER 0 6 4 WORK CITY 2269 NaN NaN WORK PROVINCE 3248 NaN NaN WORK COUNTRY 26 NaN NaN AGE 420 110 6 LOAD TIME 0 NaN NaN FLIGHT COUNT 0 213 2 BP SUM 0 0 2 3 数据预处理数据清洗丢弃票价为空记录丢弃票价为 0 平均折扣率不为 0 总飞行公里数大于 0 的记录 import pandas as pd datafile home kesci input date27730 air data csv 航空原始 数据 第一行为属性标签 cleanedfile 数据清洗后保存的文件 data pd read csv datafile encoding utf 8 读取原始数据 指定 UTF 8 编码 需要用文本编辑器将数据装换为 UTF 8 编码 data data data SUM YR 1 notnull data SUM YR 2 notnull 票价非空值才保留 只保留票价非零的 或者平均折扣率与总飞行公里数同时 为 0 的记录 index1 data SUM YR 1 0 index2 data SUM YR 2 0 index3 data SEG KM SUM 0 data avg discount 0 该规则是 与 书上给的代码无 法正常运行 修改 为 data data index1 index2 index3 该规则是 或 print data data to excel cleanedfile 导出结果 以下是处理 后数据 MEMBER NO FFP DATE FIRST FLIGHT DATE GENDER FFP TIER 0 54993 2006 11 02 2008 12 24 男 6 1 28065 2007 02 19 2007 08 03 男 6 2 55106 2007 02 01 2007 08 30 男 6 3 21189 2008 08 22 2008 08 23 男 5 4 39546 2009 04 10 2009 04 15 男 6 5 56972 2008 02 10 2009 09 29 男 6 6 44924 2006 03 22 2006 03 29 男 6 7 22631 2010 04 09 2010 04 09 女 6 8 32197 2011 06 07 2011 07 01 男 5 9 31645 2010 07 05 2010 07 05 女 6 属性规约原始数据中属性太多 根据航空公司客户价值 LRFMC 模型 选择与模型相关的六个属性 删除其他无用 属性 如会员卡号等等 def reduction data data data data LOAD TIME FFP DATE LAST TO END FLIGHT COUNT SEG KM SUM avg discount data L pd datetime data LOAD TIME pd datetime data FFP DATE data L int parse data LOAD TIME parse data FFP ADTE days 30 d ffp pd to datetime data FFP DATE d load pd to datetime data LOAD TIME res d load d ffp data2 data copy data2 L res map lambda x x np timedelta64 30 24 60 m data2 R data LAST TO END data2 F data FLIGHT COUNT data2 M data SEG KM SUM data2 C data avg discount data3 data2 L R F M C return data3 data3 reduction data data print data3 以下是以上代码处理后数据 L R F M C 0 90 1 210 0 1 86 7 140 1 2 87 11 135 1 3 68 97 23 1 4 60 5 152 0 5 74 79 92 0 6 97 1 101 0 7 48 3 73 0 8 34 6 56 0 数据变换意思是 将原始数据转换成 适当 的格式 用 来适应算法和分析等等的需要 本案例 主要采用数据变 换的方式为属性构造和数据标准化 3 需要构造 LRFMC 的 五个指标 L LOAD TIME FFP DATE 会员入会时间距观测 窗口结束的月数 观测窗口的结束时间 入会时间 单位 月 R LAST TO END 客户最近一次乘坐公司距观测窗口结 束的月数 最后一次 F FLIGHT COUNT 观测窗口内 的飞行次数 M SEG KM SUM 观测窗口的总飞行里程 C AVG DISCOUNT 平均折扣率 def zscore data data data data data mean axis 0 data std axis 0 data columns Z i for i in data columns return data data4 zscore data data3 data4 以下是以上代码处理后数据 ZL ZR ZF ZM ZC 0 1 0 14 26 1 1 1 0 9 13 2 2 1 0 8 12 2 3 0 0 0 12 1 4 0 0 9 13 1 5 0 0 5 13 1 模型构建 1 客户聚类利用 K Means 聚类算法对客户数据进 行客户分群 聚成五类 根据业务理解和需要 分析与讨 论后 确定客户类别数量 代码如下 inputfile r home kesci input date27730 zscoreddata xls 待聚类的数据 文件 k 5 需要进行的聚类类别数 读取数据并进行聚类分析 data pd read excel inputfile 读取数据 调用 k means 算法 进行聚类分析 kmodel KMeans n clusters k n jobs 4 n jobs 是并行 数 一般等于 CPU 数较好 kmodel fit data 训练模型 r1 pd Series kmodel labels value counts r2 pd DataFrame kmodel cluster centers r pd concat r2 r1 axis 1 r columns list data columns 类别数目 print r r to excel classoutfile index False r pd concat data pd Series kmodel labels index data index axis 1 r columns list data columns 聚类类别 print kmodel cluster centers print kmodel labels r 0 0 0 0 0 0 1 0 0 0 0 0 2 2 0 1 0 0 0 0 0 0 0 0 2 3 3 3 3 3 3 ZL ZR ZF ZM ZC 聚类类别 0 1 0 0 0 0 3 1 1 0 0 0 0 3 2 1 0 0 0 1 3 3 1 0 0 0 1 3 4 0 0 0 0 1 4 5 0 0 0 0 0 0 6 0 1 0 0 1 1 就剩下最后一步 画图 def density plot data plt rcParams font sans serif SimHei plt rcParams axes unicode minus False p data plot kind kde linewidth 2 subplots True sharex False p i set ylabel 密度 for i in range 5 p i set title 客户群 d i for i in range 5 plt legend plt show return plt density plot data4 clu kmodel cluster centers x 1 2 3 4 5 colors red green yellow blue black for i in range 5 plt plot x clu i label clustre str i linewidth 6 i color colors i marker o plt xlabel L R F M C plt ylabel values plt show 客户群 1 red 客户群 2 green 客户群 3 yellow 客户 群 4 blue 客户群 5 black 客户关系长度 L 消费时间间 隔 R 消费频率 F 飞行里程 M 折扣系数的平均值 C 横坐标上 总共有五个节点 按顺序对应 LRFMC 对应节点上的客户群的属性值 代表该客户群的该属性的 程度 2 客户价值分析我们重点关注的是 L F M 从图 中可以看到 1 客户群 4 blue 的 F M 很高 L 也不低 可以看做是重 要保持的客户 2 客户群 3 yellow 重要发展客户 3 客户群 1 red 重要挽留客户 原因 入会时间长 但是 F M 较低 4 客户群 2 green 一般客户 5 客户群 5 black 低价值客户重要保持客户 R 最近乘 坐航班 低 F 乘坐次数 C 平均折扣率高 舱位较高 M 里程数 高 最优先的目标
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 平台项目融资协议书
- 灯具城购销合同范本
- 游戏独占授权协议书
- 广告赞助商合同范本
- 工资银行发放协议书
- 店铺钱租赁合同范本
- 市场装修管理协议书
- 2025湖南省工业设备安装有限公司校园招聘笔试历年参考题库附带答案详解
- 2025浙江绍兴嵊州市文旅发展集团有限公司招聘越剧演员专业技能测试和书笔试历年参考题库附带答案详解
- 福建省泉州市泉港区2025-2026学年八年级上学期期中生物学试题(含答案)
- 海上风电场的保险创新
- SONY索尼数码照相机DSC-HX200使用说明书
- 北师大版高考英语一轮复习选择性必修第2册UNIT4 HUMOUR课件
- 住宅机电施工图设计技术标准
- 动静脉瘘护理查房
- 保险行业职业生涯规划总结
- 施工现场临水临电标准化图册图文并茂
- 中国现当代文学史-13贾平凹的文学地理
- 大数据与会计专业职业生涯规划书2700字数
- 七年级上册小题狂做英语巅峰版2022电子版
- 组培基本操作技术-无菌操作(园艺植物组织培养)
评论
0/150
提交评论