航空公司客户价值分析数据挖掘设计_第1页
航空公司客户价值分析数据挖掘设计_第2页
航空公司客户价值分析数据挖掘设计_第3页
航空公司客户价值分析数据挖掘设计_第4页
航空公司客户价值分析数据挖掘设计_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据挖掘大作业题目:航空公司客户价值分析目录29926_WPSOffice_Level1一、任务背景 211528_WPSOffice_Level1二、数据挖掘目标 230304_WPSOffice_Level1三、数据探索与预处理 311528_WPSOffice_Level2构建航空客户价值分析的关键特征 330304_WPSOffice_Level2数据抽取 56991_WPSOffice_Level2探索性分析 529838_WPSOffice_Level2数据处理 66991_WPSOffice_Level1四、模型构建与评价 1228631_WPSOffice_Level21.模型构建K-Means聚类算法 122907_WPSOffice_Level2客户价值分析 1329838_WPSOffice_Level1五、总结 16任务背景高铁、动车等铁路的不断兴建,出行方式的多元化让航空公司受到很大的冲击。航空公司之间竞争也很激烈,除了四大航空公司之间的竞争之外,还有新兴产业的各类小型航空公司、民营航空公司,旅游等。甚至国外航线出现高速度增长。随着时代的发展,客户问题越来越受到关注,客户流失对利润增长造成了非常大的负面影响。客户与航空公司的关系越长,航空公司的利润就越高。一个客户使用了几次这次服务,感觉服务不错,那下次还会倾向于这个服务,但是要获得新客户,不仅需要在广告和人员工资上花费很多,去吸引顾客,在销售、市场也会花费很多,并且大多数新客户产生的利润不如那些流失的老客户多。很明显,失去一个客户对公司来说比得到一个新客户更昂贵。另外老用户也可以带来新用户。因此,在这一背景下,分析航空公司客户数据,对客户进行分类,提高客户流失率是当务之急。航空公司应针对不同类型的客户制定相应的营销模式,以实现利润最大化。。数据挖掘目标按航空公司客户数据进行分类。分析了不同类型顾客的特点,比较不同类型顾客的顾客价值。可以为不同价值客户类别提供个性化服务,并采用相应的营销策略。分类客户的目的,就是要更精确地说明谁是我们的客户,了解客户到底有哪些实际需要,企业应该去吸引哪些客户,哪些客户应该被重点保留,以及应该如何迎合重点客户的需求等重要问题,进而使客户关系管理真正成为业务获得成功、扩大产品销量的催化剂。客户分类是客户关系管理的核心。帕累托定律(2/8定律):就是20%的顾客给企业带来80%的销售利润。20%的客户其利润率达到100%。现有客户可以带来90%以上的收入。而大部分的营销预算经常被用在非现有客户上。在客户金字塔中具有升级潜力有5%至30%的客户。客户金字塔中客户升级2%,销售收入增加10%,利润就增加50%。帕累托定律80/20法则这些经验可能并不完全准确,但我们可以看到新时代客户差异化的趋势和客户价值分析的重要性。企业应该投入大量的资源来赢得客户,而目标应该放在一小部分能够为企业带来高利润的客户群中,而不是所有的客户群中,以便长期实现自身的特点。航空公司如何投入有限的资源来实现精准营销,从而提高企业的竞争力,最终实现利润最大化?这是航空公司面临的第一个也是必要解决的问题。三、数据探索与预处理构建航空客户价值分析的关键特征这种数据挖掘的目标是通过航空公司的客户数据识别客户价值,并识别具有不同价值的客户。首先,目标是客户价值识别。RFM模型是识别顾客价值最常用的模型,可以用来对顾客进行分类。数据挖掘的目标是客户价值分析,即通过航空公司客户数据识别具有不同价值的客户。识别客户价值最常用的模型是RFM模型。R(Recency)指的是最近一次消费时间与截止时间的间隔。一般而言,最近一次消费时间与截止时间的间隔越短,说明对当时提供的商品或是服务也最有可能感兴趣。F(Frequency)指顾客在某段时间内所消费的次数。可以说消费频率越高的顾客,也是满意度越高的顾客,其忠诚度也就越高,顾客价值也就越大。M(Monetary)指顾客在某段时间内所消费的金额。消费金额越大的顾客,他们的消费能力自然也就越大,这就是所谓“20%的顾客贡献了80%的销售额”的二八法则RFM模型(客户管理关系)RFM模型包括三个特征,使用三维坐标系进行展示,如图所示。X轴表示最近(时间),Y轴表示频率,Z轴表示货币,每个轴一般会分成5级表示程度,1为最小,5为最大然而,由于机票价格受距离、舱位等诸多因素的影响,同一金额对航空公司的价值也不尽相同。因此,我们需要对指标进行修订。在所选变量中,客舱系数=对应于客舱系数的平均折扣系数=c,距离系数=某段时间内的累计飞行里程=m。考虑到航空公司的会员制会因用户的出勤时间长短而在一定程度上影响客户价值,增加指标L=成为会员时间长度=客户关系长度决定了五个指标。R代表客户最近一次消费距今时间长度,客户关系长度L(从入会之日算起),消费频率f、飞行里程m和折扣系数。以上指标是航空公司对客户价值的识别,称为LRFMC模型。综上,本案例,采用聚类的办法进行识别客户价值,以LRFMC模型为基础该案例,总体流程如下图挖掘步骤从航空公司中,有选择地提取数据进行观察、探索性数据分析和预处理,包括缺失和异常值的分析和处理、属性说明、清理和转换。将处理后的数据作为建模数据,利用客流价值的LRFMC模型对客户进行聚类。然后分析每个客户群的特点,识别出有价值的客户。针对模型结果得到不同价值的客户,采用不同的营销手段,推送定制化的营销服务,重点维护老客户数据抽取选取两年的时间作为观察窗口探索性分析对航空公司的客户数据进行了探索和分析。主要分析缺失和异常数据。通过观察发现,有票价为0、折扣率为0、飞行公里数为0的数据。票价为空值,可能是不存在飞行记录,其他空值可能是,飞机票来自于积分兑换、特价0折优惠等渠道查找每列属性观测值中空值的个数、最大值、最小值的代码如下#-*-coding:utf-8-*-

#对数据进行基本的探索

#返回缺失值个数以及最大最小值

importpandasaspd

datafile='../data/air_data.csv'#航空原始数据,第一行为属性标签

resultfile='../tmp/explore1.xls'#数据探索结果表

data=pd.read_csv(datafile,encoding='utf-8')#读取原始数据,指定UTF-8编码(需要用文本编辑器将数据装换为UTF-8编码)

explore=data.describe(percentiles=[],include='all').T#包括对数据的基本描述,percentiles参数是指定计算多少的分位数表(如1/4分位数、中位数等);T是转置,转置后更方便查阅

explore['null']=len(data)-explore['count']#describe()函数自动计算非空值数,需要手动计算空值数

explore=explore[['null','max','min']]

explore.columns=[u'空值数',u'最大值',u'最小值']#表头重命名

'''这里只选取部分探索结果。

describe()函数自动计算的字段有count(非空值数)、unique(唯一值数)、top(频数最高者)、freq(最高频数)、mean(平均值)、std(方差)、min(最小值)、50%(中位数)、max(最大值)'''

explore.to_excel(resultfile)#导出结果结果如下数据处理数据清洗航空公司客户原始数据中有少量缺失和异常值,需要进行清洗后才能用于分析。通过对数据观察发现原始数据中存在票价为空值,票价最小值为0,折扣率最小值为0,总飞行公里数大于0的记录。票价为空值的数据可能是客户不存在乘机记录造成。处理方法:将票价为空的记录丢弃。其他的数据可能是客户乘坐0折机票或者积分兑换造成。由于原始数据量大,通过计算发现这类数据所占比例较小,对于问题影响不大,因此对其进行丢弃处理。处理方法:将票价为0的记录丢弃,丢弃平均折扣率不为0,总飞行公里数大于0的记录。删除后剩余的样本值是62044个,可见正常样本的比例超过98%,因此不会对分析结果产生较大的影响属性规约航空公司客户价值原始数据中的属性太多,对其评估通常基于LRFMC模型,与其相关的只有6个属性如下。删除与其不相关,冗余的其他的属性数据变换原始数据没有给出LRFMC模型的五个指标,需通过计算得出,而上面6个属性与这5个指标的关系如下:L(客户关系长度)=LOAD_TIME-FFP_DATE会员入会时间距观测窗口结束的月数=观测窗口结束的时间-入会时间(单位:月)R=LAST_TO_END客户最近一次乘坐公司飞机距观测窗口结束的月数=最后一次乘机时间至观察窗口末端时长[单位:月]F=FLIGHT_COUNT客户在观测窗口内乘坐公司飞机的次数=观测窗口的飞行次数(单位:次)M=SEG_KM_SUM客户在观测时间内在公司累计的飞行里程=观测窗口的总飞行公里数(单位:公里)C=AVG_DISCOUNT客户在观测时间内乘坐舱位所对应的折扣系数的平均值=平均折扣率

importpandasaspd

importnumpyasnp

importdatetime

datafile='../tmp/data_cleaned.xls'

data=pd.read_excel(datafile)

d1,d2=[],[]

forxindata['LOAD_TIME']:

d1.append(datetime.datetime.strptime(x,'%Y/%m/%d'))

foryindata['FFP_DATE']:

d2.append(datetime.datetime.strptime(y,'%Y/%m/%d'))

d3=[d1[i]-d2[i]foriinrange(len(d1))]

data['L']=[round((x.days/30),2)forxind3]

data2=data[['L','LAST_TO_END','FLIGHT_COUNT','SEG_KM_SUM','avg_discount']]

data2.columns=['L','R','F','M','C']

data2.to_csv('../data/zscoredata1.csv',index=False)发现得到数据和网上正确答案存在部分差距,可能是数据处理格式化和精确度的问题从数据中提取5个指标后,对数据分布情况进行分析(分析结果explore2.xls)。从表中数据可以发现,五个特征的取值范围数据差异较大,为了消除数量级数据带来的影响,需要对数据做标准化处理。#-*-coding:utf-8-*-

#对数据进行基该的探索

#返回最大最小值

importpandasaspd

datafile='../data/zscoredata1.csv'#航空原始数据,第一行为属性标签

resultfile1='../tmp/explore2.xls'#数据探索结果表

data=pd.read_csv(datafile,encoding='utf-8')#读取原始数据,指定UTF-8编码(需要用文该编辑器将数据转换为UTF-8编码)

explore=data.describe(percentiles=[],include='all').T#包括对数据的基该描述,percentiles参数是指定计算多少的分位数表(如1/4分位数、中位数等);T是转置,转置后更方便查阅

explore=explore[['max','min','mean','std']]

explore.columns=[u'最大值',u'最小值',u'平均值',u'方差']#表头重命名

explore.to_excel(resultfile1)#导出结果标注差标准化#-*-coding:utf-8-*-

#标准差标准化

importpandasaspd

datafile='../data/LRFMC.xlsx'#需要进行标准化的数据文件;

zscoredfile='../tmp/zscoreddata1.xls'#标准差化后的数据存储路径文件;

#标准化处理

data=pd.read_excel(datafile)

data=(data-data.mean(axis=0))/(data.std(axis=0))#简洁的语句实现了标准化变换,类似地可以实现任何想要的变换。

data.columns=['Z'+iforiindata.columns]#表头重命名。

data.to_excel(zscoredfile,index=False)#数据写入标准差标准化处理后的数据数据见data_test/tmp/zscoreddata1.xls四、模型构建与评价客户价值分析模型可以分为两个部分。第一个部分是根据航空公司客户5个指标,对客户进行聚类分群,第二部分是对分群后的客户群进行特征分析,并制定相应的方案1.模型构建K-Means聚类算法对客户数据进行分群,可以将k=5,即把客户分成5类参考#-*-coding:utf-8-*-

#K-Means聚类算法

importpandasaspd

fromsklearn.clusterimportKMeans#导入K均值聚类算法

importnumpyasnp

importmatplotlib.pyplotasplt

inputfile='../tmp/zscoreddata1.xls'#待聚类的数据文件

resultfile='../tmp/kmeans.csv'

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_)

r3=pd.Series(['客户群1','客户群2','客户群3','客户群4','客户群5',])

r=pd.concat([r3,r1,r2],axis=1)

r.columns=['聚类类别','聚类个数']+list(data.columns)

r.to_csv(resultfile,encoding='utf_8_sig',index=False)

客户价值分析画雷达图#-*-coding:utf-8-*-

#画出特征雷达图

importpandasaspd

importnumpyasnp

importmatplotlib.pyplotasplt

fromsklearn.clusterimportKMeans#导入K均值聚类算法

inputfile='../tmp/zscoreddata1.xls'#待聚类的数据文件

k=5#需要进行的聚类类别数

#读取数据并进行聚类分析

data=pd.read_excel(inputfile)#读取数据

#调用k-means算法,进行聚类分析

kmodel=KMeans(n_clusters=k,n_jobs=4)#n_jobs是并行数,一般等于CPU数较好

kmodel.fit(data)#训练模型

labels=data.columns#标签

k=5#数据个数

plot_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()

ax=fig.add_subplot(111,polar=True)#设置为极坐标方式

foriinrange(len(plot_data)):

ax.plot(angles,plot_data[i],'o-',color=color[i],label='client'+str(i+1),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")

ax.set_title("matplotlib雷达图",va='bottom',fontproperties="SimHei")

plt.legend(loc=4)

plt.show()客户群4聚类个数5336个曲线为client1[blue]此类用户的特点是F(乘坐次数),M很高,L入会时长也不低,R(最近乘坐航班)属性最小,可作为最优先的目标,进行差异化管理,提高满意度。可以作为重要保持客户客户群1聚类个数4186个Client4[yellow]的C属性最大,R(最近乘坐航班)低,此类客户的特征是潜在价值客户。虽然说,可以看到当前价值不高,但是却有很大的发展潜力,促使这类客户在该公司消费和合作伙伴处消费,这样他们很快可以为公司创造价值。可以作为重要发展客户客户群3聚类个数15740个雷达图曲线为client1[red]的L属性较大但F,M较低。这说明之前可能乘坐航班过多,但最近乘坐较少,可能是流失或者其他原因。增加与这类客户的互动,了解情况,采取一定手段,延长客户生命周期。为重要挽留用户客户群2聚类个数24658个雷达图曲线为client2[green]的LR属性最小客户群5聚类个数12124个雷达图曲线为client5[Celadan青色]的R属性最大客户群2和5的特点是C值较低、近期航班(R)较少、行程次数(F)较少或里程(M)较低。。但入会时长(L)也较短,因此可能是普通的工薪家庭,只有当公司提供折扣和促销时,他们才可以乘坐我们的航班。可被视为是一般与低价值客户通过LRFMC分析可将航空公司的客户群体划分成以上等级针对不同等级的客户,航空公司可以采取不同的管理策略首次兑换会员的升级与保级:可从客户数据库中提取接近但不符合首次可兑换标准的客户,并进行进行提醒或者进行促销活动,使其易于消费达到标准成为会员;在对会员升级或保级进行评价的时间点之前,对那些接近但尚未达到要求的客户进行适当提醒或者一些促销活动。并告知会员的权限和活动。一旦成为会员,客户在该公司进行再次消费兑换就比在其他公司进行兑换要容易许多,(心理原因潜意思行为)这样比创建一个新用户的成该低的多。这样,我们不仅可以获得利润,还可以提

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论