K-means算法原理以及应用(R)
来源:互联网 发布:linux 开机自启动脚本 编辑:程序博客网 时间:2024/06/06 07:51
K-means是一种无监督学习算法,是聚类算法中最简单的一种了。不同与一些分类的监督学习算法,比如逻辑回归、SVM、随机森林等,k-means聚类无需给定Y变量,只有特征X。下面是k-means算法原理及思想。
在聚类问题中,给我们的训练样本是,每个,没有了y。
K-means算法是将样本聚类成k个簇(cluster),具体算法描述如下:
1、 随机选取k个聚类质心点(cluster centroids)为。
2、 重复下面过程直到收敛 {
对于每一个样例i,计算其应该属于的类
对于每一个类j,重新计算该类的质心
}
K是我们事先给定的聚类数,代表样例i与k个类中距离最近的那个类,的值是1到k中的一个。质心代表我们对属于同一个类的样本中心点的猜测,拿星团模型来解释就是要将所有的星星聚成k个星团,首先随机选取k个宇宙中的点(或者k个星星)作为k个星团的质心,然后第一步对于每一个星星计算其到k个质心中每一个的距离,然后选取距离最近的那个星团作为,这样经过第一步每一个星星都有了所属的星团;第二步对于每一个星团,重新计算它的质心(对里面所有的星星坐标求平均)。重复迭代第一步和第二步直到质心不变或者变化很小。
下图展示了对n个样本点进行K-means聚类的效果,这里k取2。
K-means面对的第一个问题是如何保证收敛,前面的算法中强调结束条件就是收敛,可以证明的是K-means完全可以保证收敛性。下面我们定性的描述一下收敛性,我们定义畸变函数(distortion function)如下:
J函数表示每个样本点到其质心的距离平方和。K-means是要将J调整到最小。假设当前J没有达到最小值,那么首先可以固定每个类的质心,调整每个样例的所属的类别来让J函数减少,同样,固定,调整每个类的质心也可以使J减小。这两个过程就是内循环中使J单调递减的过程。当J递减到最小时,和c也同时收敛。(在理论上,可以有多组不同的和c值能够使得J取得最小值,但这种现象实际上很少见)。
由于畸变函数J是非凸函数,意味着我们不能保证取得的最小值是全局最小值,也就是说k-means对质心初始位置的选取比较感冒,但一般情况下k-means达到的局部最优已经满足需求。但如果你怕陷入局部最优,那么可以选取不同的初始值跑多遍k-means,然后取其中最小的J对应的和c输出。
kmeans的算法和思想弄懂之后,就开始要知道如何使用它,以及在什么场合适用,有什么优点和缺点。下面我来用示例来展示:下面是一家航空公司的一部分客户数据:
属性名称
属性说明
客户基本信息
MEMBER_NO
会员卡号
FFP_DATE
入会时间
FIRST_FLIGHT_DATE
第一次飞行日期
GENDER
性别
FFP_TIER
会员卡级别
WORK_CITY
工作地城市
WORK_PROVINCE
工作地所在省份
WORK_COUNTRY
工作地所在国家
AGE
年龄
乘机信息
FLIGHT_COUNT
观测窗口内的飞行次数
LOAD_TIME
观测窗口的结束时间
LAST_TO_END
最后一次乘机时间至观测窗口结束时长
AVG_DISCOUNT
平均折扣率
SUM_YR
观测窗口的票价收入
SEG_KM_SUM
观测窗口的总飞行公里数
LAST_FLIGHT_DATE
末次飞行日期
AVG_INTERVAL
平均乘机时间间隔
MAX_INTERVAL
最大乘机间隔
积分信息
EXCHANGE_COUNT
积分兑换次数
EP_SUM
总精英积分
PROMOPTIVE_SUM
促销积分
PARTNER_SUM
合作伙伴积分
POINTS_SUM
总累计积分
POINT_NOTFLIGHT
非乘机的积分变动次数
BP_SUM
总基本积分
*观测窗口:以过去某个时间点为结束时间,某一时间长度作为宽度,得到历史时间范围内的一个时间段。
目标:对客户精准个性化营销,提升航空公司收益。思路:
1.选取特征变量;
在经典RFM模型上加上两个业务紧密相关指标,总共5个特征变量。
模型
L
R
F
M
C
航空公司LRFMC模型
会员入会时间距观测窗口结束的月数
客户最近一次乘坐公司飞机距观测窗口结束的月数
客户在观测窗口内乘坐公司飞机的次数
客户在观测窗口内累计的飞行里程
客户在观测窗口内乘坐舱位所对应的折扣系数的平均值
2.采用k-means进行聚类(K=5);
3.对聚类用户进行特征分析;
4.对不同聚类群体客户特征进行个性化营销服务。
summary(datafile)
## MEMBER_NO FFP_DATE FIRST_FLIGHT_DATE GENDER ## Min. : 1 2011/1/13 : 184 2013/2/16: 96 : 3 ## 1st Qu.:15748 2013/1/1 : 165 2012/9/30: 85 男:48134 ## Median :31495 2013/3/1 : 100 2013/2/15: 84 女:14851 ## Mean :31495 2010/11/17: 99 2005/9/9 : 78 ## 3rd Qu.:47241 2011/1/14 : 95 2012/4/21: 70 ## Max. :62988 2012/9/19 : 88 2012/4/27: 70 ## (Other) :62257 (Other) :62505 ## FFP_TIER WORK_CITY WORK_PROVINCE WORK_COUNTRY ## Min. :4.000 广州 : 9385 广东 :17507 CN :57748 ## 1st Qu.:4.000 北京 : 7843 北京 : 8014 HK : 991 ## Median :4.000 上海 : 4995 上海 : 4994 JP : 875 ## Mean :4.102 深圳 : 3604 辽宁 : 4182 KR : 790 ## 3rd Qu.:4.000 : 2268 : 3244 US : 575 ## Max. :6.000 大连 : 1978 新疆 : 2512 (Other): 2008 ## (Other):32915 (Other):22535 NA's : 1 ## AGE LOAD_TIME FLIGHT_COUNT BP_SUM ## Min. : 6.00 2014/3/31:62988 Min. : 2.00 Min. : 0 ## 1st Qu.: 35.00 1st Qu.: 3.00 1st Qu.: 2518 ## Median : 41.00 Median : 7.00 Median : 5700 ## Mean : 42.48 Mean : 11.84 Mean : 10925 ## 3rd Qu.: 48.00 3rd Qu.: 15.00 3rd Qu.: 12831 ## Max. :110.00 Max. :213.00 Max. :505308 ## NA's :420 ## EP_SUM_YR_1 EP_SUM_YR_2 SUM_YR_1 SUM_YR_2 ## Min. :0 Min. : 0.0 Min. : 0 Min. : 0 ## 1st Qu.:0 1st Qu.: 0.0 1st Qu.: 1003 1st Qu.: 780 ## Median :0 Median : 0.0 Median : 2800 Median : 2773 ## Mean :0 Mean : 265.7 Mean : 5355 Mean : 5604 ## 3rd Qu.:0 3rd Qu.: 0.0 3rd Qu.: 6574 3rd Qu.: 6846 ## Max. :0 Max. :74460.0 Max. :239560 Max. :234188 ## NA's :551 NA's :138 ## SEG_KM_SUM WEIGHTED_SEG_KM LAST_FLIGHT_DATE AVG_FLIGHT_COUNT ## Min. : 368 Min. : 0 2014/3/31: 959 Min. : 0.2500 ## 1st Qu.: 4747 1st Qu.: 3219 2014/3/30: 933 1st Qu.: 0.4286 ## Median : 9994 Median : 6978 2014/3/28: 924 Median : 0.8750 ## Mean : 17124 Mean : 12777 2014/3/29: 779 Mean : 1.5422 ## 3rd Qu.: 21271 3rd Qu.: 15300 2014/3/27: 767 3rd Qu.: 1.8750 ## Max. :580717 Max. :558440 2014/3/26: 728 Max. :26.6250 ## (Other) :57898 ## AVG_BP_SUM BEGIN_TO_FIRST LAST_TO_END AVG_INTERVAL ## Min. : 0.0 Min. : 0.0 Min. : 1.0 Min. : 0.00 ## 1st Qu.: 336.0 1st Qu.: 9.0 1st Qu.: 29.0 1st Qu.: 23.37 ## Median : 752.4 Median : 50.0 Median :108.0 Median : 44.67 ## Mean : 1421.4 Mean :120.1 Mean :176.1 Mean : 67.75 ## 3rd Qu.: 1690.3 3rd Qu.:166.0 3rd Qu.:268.0 3rd Qu.: 82.00 ## Max. :63163.5 Max. :729.0 Max. :731.0 Max. :728.00 ## ## MAX_INTERVAL ADD_POINTS_SUM_YR_1 ADD_POINTS_SUM_YR_2 EXCHANGE_COUNT ## Min. : 0 Min. : 0.0 Min. : 0.0 Min. : 0.0000 ## 1st Qu.: 79 1st Qu.: 0.0 1st Qu.: 0.0 1st Qu.: 0.0000 ## Median :143 Median : 0.0 Median : 0.0 Median : 0.0000 ## Mean :166 Mean : 540.3 Mean : 814.7 Mean : 0.3198 ## 3rd Qu.:228 3rd Qu.: 0.0 3rd Qu.: 0.0 3rd Qu.: 0.0000 ## Max. :728 Max. :600000.0 Max. :728282.0 Max. :46.0000 ## ## avg_discount P1Y_Flight_Count L1Y_Flight_Count P1Y_BP_SUM ## Min. :0.0000 Min. : 0.000 Min. : 0.000 Min. : 0 ## 1st Qu.:0.6120 1st Qu.: 2.000 1st Qu.: 1.000 1st Qu.: 946 ## Median :0.7119 Median : 3.000 Median : 3.000 Median : 2692 ## Mean :0.7216 Mean : 5.766 Mean : 6.073 Mean : 5367 ## 3rd Qu.:0.8095 3rd Qu.: 7.000 3rd Qu.: 8.000 3rd Qu.: 6485 ## Max. :1.5000 Max. :118.000 Max. :111.000 Max. :246197 ## ## L1Y_BP_SUM EP_SUM ADD_Point_SUM Eli_Add_Point_Sum## Min. : 0 Min. : 0.0 Min. : 0 Min. : 0 ## 1st Qu.: 545 1st Qu.: 0.0 1st Qu.: 0 1st Qu.: 0 ## Median : 2547 Median : 0.0 Median : 0 Median : 0 ## Mean : 5558 Mean : 265.7 Mean : 1355 Mean : 1621 ## 3rd Qu.: 6619 3rd Qu.: 0.0 3rd Qu.: 0 3rd Qu.: 345 ## Max. :259111 Max. :74460.0 Max. :984938 Max. :984938 ## ## L1Y_ELi_Add_Points Points_Sum L1Y_Points_Sum ## Min. : 0 Min. : 0 Min. : 0 ## 1st Qu.: 0 1st Qu.: 2775 1st Qu.: 700 ## Median : 0 Median : 6328 Median : 2860 ## Mean : 1080 Mean : 12546 Mean : 6639 ## 3rd Qu.: 0 3rd Qu.: 14302 3rd Qu.: 7500 ## Max. :728282 Max. :985572 Max. :728282 ## ## Ration_L1Y_Flight_Count Ration_P1Y_Flight_Count Ration_P1Y_BPS ## Min. :0.0000 Min. :0.0000 Min. :0.0000 ## 1st Qu.:0.2500 1st Qu.:0.2889 1st Qu.:0.2582 ## Median :0.5000 Median :0.5000 Median :0.5143 ## Mean :0.4864 Mean :0.5136 Mean :0.5223 ## 3rd Qu.:0.7111 3rd Qu.:0.7500 3rd Qu.:0.8151 ## Max. :1.0000 Max. :1.0000 Max. :1.0000 ## ## Ration_L1Y_BPS Point_NotFlight ## Min. :0.0000 Min. : 0.000 ## 1st Qu.:0.1680 1st Qu.: 0.000 ## Median :0.4767 Median : 0.000 ## Mean :0.4684 Mean : 2.728 ## 3rd Qu.:0.7284 3rd Qu.: 1.000 ## Max. :1.0000 Max. :140.000 ##
head(datafile)
## MEMBER_NO FFP_DATE FIRST_FLIGHT_DATE GENDER FFP_TIER WORK_CITY## 1 54993 2006/11/2 2008/12/24 男 6 .## 2 28065 2007/2/19 2007/8/3 男 6 ## 3 55106 2007/2/1 2007/8/30 男 6 .## 4 21189 2008/8/22 2008/8/23 男 5 Los Angeles## 5 39546 2009/4/10 2009/4/15 男 6 贵阳## 6 56972 2008/2/10 2009/9/29 男 6 广州## WORK_PROVINCE WORK_COUNTRY AGE LOAD_TIME FLIGHT_COUNT BP_SUM EP_SUM_YR_1## 1 北京 CN 31 2014/3/31 210 505308 0## 2 北京 CN 42 2014/3/31 140 362480 0## 3 北京 CN 40 2014/3/31 135 351159 0## 4 CA US 64 2014/3/31 23 337314 0## 5 贵州 CN 48 2014/3/31 152 273844 0## 6 广东 CN 64 2014/3/31 92 313338 0## EP_SUM_YR_2 SUM_YR_1 SUM_YR_2 SEG_KM_SUM WEIGHTED_SEG_KM## 1 74460 239560 234188 580717 558440.1## 2 41288 171483 167434 293678 367777.2## 3 39711 163618 164982 283712 355966.5## 4 34890 116350 125500 281336 306900.9## 5 42265 124560 130702 309928 300834.1## 6 27323 112364 76946 294585 285067.7## LAST_FLIGHT_DATE AVG_FLIGHT_COUNT AVG_BP_SUM BEGIN_TO_FIRST LAST_TO_END## 1 2014/3/31 26.250 63163.50 2 1## 2 2014/3/25 17.500 45310.00 2 7## 3 2014/3/21 16.875 43894.88 10 11## 4 2013/12/26 2.875 42164.25 21 97## 5 2014/3/27 19.000 34230.50 3 5## 6 2014/1/13 11.500 39167.25 11 79## AVG_INTERVAL MAX_INTERVAL ADD_POINTS_SUM_YR_1 ADD_POINTS_SUM_YR_2## 1 3.483254 18 3352 36640## 2 5.194245 17 0 12000## 3 5.298507 18 3491 12000## 4 27.863636 73 0 0## 5 4.788079 47 0 22704## 6 7.043956 52 0 2460## EXCHANGE_COUNT avg_discount P1Y_Flight_Count L1Y_Flight_Count P1Y_BP_SUM## 1 34 0.9616390 103 107 246197## 2 29 1.2523144 68 72 177358## 3 20 1.2546755 65 70 169072## 4 11 1.0908696 13 10 186104## 5 27 0.9706579 71 81 128448## 6 10 0.9676925 50 42 190583## L1Y_BP_SUM EP_SUM ADD_Point_SUM Eli_Add_Point_Sum L1Y_ELi_Add_Points## 1 259111 74460 39992 114452 111100## 2 185122 41288 12000 53288 53288## 3 182087 39711 15491 55202 51711## 4 151210 34890 0 34890 34890## 5 145396 42265 22704 64969 64969## 6 122755 27323 2460 29783 29783## Points_Sum L1Y_Points_Sum Ration_L1Y_Flight_Count## 1 619760 370211 0.5095238## 2 415768 238410 0.5142857## 3 406361 233798 0.5185185## 4 372204 186100 0.4347826## 5 338813 210365 0.5328947## 6 343121 152538 0.4565217## Ration_P1Y_Flight_Count Ration_P1Y_BPS Ration_L1Y_BPS Point_NotFlight## 1 0.4904762 0.4872207 0.5127773 50## 2 0.4857143 0.4892891 0.5107081 33## 3 0.4814815 0.4814671 0.5185300 26## 4 0.5652174 0.5517217 0.4482754 12## 5 0.4671053 0.4690537 0.5309427 39## 6 0.5434783 0.6082326 0.3917642 15
#确定要探索分析的变量col=c(15:18,20:29)#去掉日期型变量#输出变量最值、缺失情况summary(datafile[,col])
## SUM_YR_1 SUM_YR_2 SEG_KM_SUM WEIGHTED_SEG_KM ## Min. : 0 Min. : 0 Min. : 368 Min. : 0 ## 1st Qu.: 1003 1st Qu.: 780 1st Qu.: 4747 1st Qu.: 3219 ## Median : 2800 Median : 2773 Median : 9994 Median : 6978 ## Mean : 5355 Mean : 5604 Mean : 17124 Mean : 12777 ## 3rd Qu.: 6574 3rd Qu.: 6846 3rd Qu.: 21271 3rd Qu.: 15300 ## Max. :239560 Max. :234188 Max. :580717 Max. :558440 ## NA's :551 NA's :138 ## AVG_FLIGHT_COUNT AVG_BP_SUM BEGIN_TO_FIRST LAST_TO_END ## Min. : 0.2500 Min. : 0.0 Min. : 0.0 Min. : 1.0 ## 1st Qu.: 0.4286 1st Qu.: 336.0 1st Qu.: 9.0 1st Qu.: 29.0 ## Median : 0.8750 Median : 752.4 Median : 50.0 Median :108.0 ## Mean : 1.5422 Mean : 1421.4 Mean :120.1 Mean :176.1 ## 3rd Qu.: 1.8750 3rd Qu.: 1690.3 3rd Qu.:166.0 3rd Qu.:268.0 ## Max. :26.6250 Max. :63163.5 Max. :729.0 Max. :731.0 ## ## AVG_INTERVAL MAX_INTERVAL ADD_POINTS_SUM_YR_1 ADD_POINTS_SUM_YR_2## Min. : 0.00 Min. : 0 Min. : 0.0 Min. : 0.0 ## 1st Qu.: 23.37 1st Qu.: 79 1st Qu.: 0.0 1st Qu.: 0.0 ## Median : 44.67 Median :143 Median : 0.0 Median : 0.0 ## Mean : 67.75 Mean :166 Mean : 540.3 Mean : 814.7 ## 3rd Qu.: 82.00 3rd Qu.:228 3rd Qu.: 0.0 3rd Qu.: 0.0 ## Max. :728.00 Max. :728 Max. :600000.0 Max. :728282.0 ## ## EXCHANGE_COUNT avg_discount ## Min. : 0.0000 Min. :0.0000 ## 1st Qu.: 0.0000 1st Qu.:0.6120 ## Median : 0.0000 Median :0.7119 ## Mean : 0.3198 Mean :0.7216 ## 3rd Qu.: 0.0000 3rd Qu.:0.8095 ## Max. :46.0000 Max. :1.5000 ##
head(datafile[,col])
## SUM_YR_1 SUM_YR_2 SEG_KM_SUM WEIGHTED_SEG_KM AVG_FLIGHT_COUNT AVG_BP_SUM## 1 239560 234188 580717 558440.1 26.250 63163.50## 2 171483 167434 293678 367777.2 17.500 45310.00## 3 163618 164982 283712 355966.5 16.875 43894.88## 4 116350 125500 281336 306900.9 2.875 42164.25## 5 124560 130702 309928 300834.1 19.000 34230.50## 6 112364 76946 294585 285067.7 11.500 39167.25## BEGIN_TO_FIRST LAST_TO_END AVG_INTERVAL MAX_INTERVAL ADD_POINTS_SUM_YR_1## 1 2 1 3.483254 18 3352## 2 2 7 5.194245 17 0## 3 10 11 5.298507 18 3491## 4 21 97 27.863636 73 0## 5 3 5 4.788079 47 0## 6 11 79 7.043956 52 0## ADD_POINTS_SUM_YR_2 EXCHANGE_COUNT avg_discount## 1 36640 34 0.9616390## 2 12000 29 1.2523144## 3 12000 20 1.2546755## 4 0 11 1.0908696## 5 22704 27 0.9706579## 6 2460 10 0.9676925
#丢弃票价为空的记录delet_na = datafile[-which(is.na(datafile$SUM_YR_1) | is.na(datafile$SUM_YR_2)),]#丢弃票价为0、平均折扣率不为0、总飞行公里数大于0的记录index = ((delet_na$SUM_YR_1 == 0 & delet_na$SUM_YR_2 == 0) * (delet_na$avg_discount != 0) * (delet_na$SEG_KM_SUM > 0))newdata = delet_na[-which(index == 1),]datascore <- data.frame(L=as.numeric(difftime(newdata$LOAD_TIME,newdata$FFP_DATE,units = "days"))/30, R=newdata$LAST_TO_END, F=newdata$FLIGHT_COUNT, M=newdata$SEG_KM_SUM, C=newdata$avg_discount)head(datascore)
## L R F M C## 1 90.20000 1 210 580717 0.9616390## 2 86.56667 7 140 293678 1.2523144## 3 87.16667 11 135 283712 1.2546755## 4 68.23333 97 23 281336 1.0908696## 5 60.53333 5 152 309928 0.9706579## 6 74.70000 79 92 294585 0.9676925
#各个特征数据分布情况
library(ggplot2)ggplot(datascore, aes(x=L)) + geom_histogram(aes(y=..density..),bins = 30,colour="black", fill="white") + geom_density(alpha=.2, fill="1")
ggplot(datascore, aes(x=R)) + geom_histogram(aes(y=..density..),bins = 30,colour="black", fill="white") + geom_density(alpha=.2, fill="2")
ggplot(datascore, aes(x=F)) + geom_histogram(aes(y=..density..),bins = 30,colour="black", fill="white") + geom_density(alpha=.2, fill="3")
ggplot(datascore, aes(x=M)) + geom_histogram(aes(y=..density..),bins = 30,colour="black", fill="white") + geom_density(alpha=.2, fill="4")
ggplot(datascore, aes(x=C)) + geom_histogram(aes(y=..density..),bins = 30,colour="black", fill="white") + geom_density(alpha=.2, fill="5")
#数据标准化zdatascore=scale(datascore)colnames(zdatascore)=c("ZL","ZR","ZF","ZM","ZC")head(zdatascore)
## ZL ZR ZF ZM ZC## [1,] 1.4357472 -0.9449977 14.0345098 26.76211 1.294939## [2,] 1.3071924 -0.9119453 9.0735594 13.12737 2.866311## [3,] 1.3284216 -0.8899103 8.7192058 12.65397 2.879075## [4,] 0.6585213 -0.4161590 0.7816852 12.54111 1.993551## [5,] 0.3860794 -0.9229628 9.9240081 13.89927 1.343695## [6,] 0.8873253 -0.5153163 5.6717649 13.17045 1.327664
#聚类分析result=kmeans(zdatascore,5)
#说明一下,这里聚类中心K=5,由于初始点随机,所以每次聚类的结果可能会有不同。经我多次重复实验后,发现最终的雷达图(见下下图)都是基本相同的,说明聚类的结果大致还是一样的,所以可以采用此聚类结果,对此聚类用户进行群体特征分析,并进行个性化营销。实际中,个人建议也多跑几次,检测聚类结果是否都相同。
#结果输出head(result$cluster)
## [1] 5 5 5 5 5 5
result$centers#聚类中心
## ZL ZR ZF ZM ZC## 1 0.2696816 -0.7186760 1.2558097 1.1945424 0.32514159## 2 -0.7170713 -0.3611278 -0.2769407 -0.2718581 -0.18322244## 3 -0.3272473 1.7114570 -0.5727285 -0.5354953 0.02241081## 4 1.1545411 -0.2933660 -0.2427147 -0.2446185 0.03465997## 5 0.6922035 -0.8496275 3.8695212 3.8514378 0.50455875
result$size#查看聚类分布
## [1] 8403 24226 12175 15468 1779
#查看kmeans聚类的结果,这里只用两个特征来展示聚类结果aaa <- as.data.frame(zdatascore)aaa$cluster <-result$clusterqplot(ZL,ZC,data =aaa,colour =factor(cluster))
#从图像上看单单二个特征变量,并不能明显的看出聚类的好坏
把聚类中心数据导出到excel,使用雷达图展示群类别
优势特征
弱势特征
客户群1
F
M
R
客户群2
L
F
M
客户群3
F
M
R
客户群4
L
C
客户群5
C
R
F
M
*注:正常字体表示最大值、加粗字体表示次大值、斜体字体表示最小值、带下划线的字体表示次小值
重要保持客户:这类客户的平均折扣率(C)较高(一般所乘航班的舱位等级较高),最近乘坐过本公司航班(R)低,乘坐的次数(F)或里程(M)较高。他们是航空公司的高价值客户,是最为理想的客户类型,对航空公司的贡献最大,所占比例却较小。航空公司应该优先将资源投放到他们身上,对他们进行差异化管理和一对一营销,提高这类客户的忠诚度与满意度,尽可能延长这类客户的高水平消费。
重要发展客户:这类客户的平均折扣率(C)较高,最近乘坐过本公司航班(R)低,但乘坐次数(F)或乘坐里程(M)较低。这类客户入会时长(L)短,他们是航空公司的潜在价值客户。虽然这类客户的当前价值并不是很高,但却有很大的发展潜力。航空公司要努力促使这类客户增加在本公司的乘机消费和合作伙伴处的消费,也就是增加客户的钱包份额。通过客户价值的提升,加强这类客户的满意度,提高他们转向竞争对手的转移成本,使他们逐渐成为公司的忠诚客户。
重要挽留客户:这类客户过去所乘航班的平均折扣率(C)、乘坐次数(F)或者里程(M)较高,但是较长时间已经没有乘坐本公司的航班(R)高或是乘坐频率变小。他们客户价值变化的不确定性很高。由于这些客户衰退的原因各不相同,所以掌握客户的最新信息、维持与客户的互动就显得尤为重要。航空公司应该根据这些客户的最近消费时间、消费次数的变化情况,推测客户消费的异动状况,并列出客户名单,对其重点联系,采取一定的营销手段,延长客户的生命周期。
一般与低价值客户:这类客户所乘航班的平均折扣率(C)很低,较长时间没有乘坐过本公司航班(R)高,乘坐的次数(F)或里程(M)较低,入会时长(L)短。他们是航空公司的一般用户与低价值客户,可能是在航空公司机票打折促销时,才会乘坐本公司航班。
营销方式与业务知识紧密相连,航空公司营销人员,可以对不同的客户群体进行个性化营销,避免了资源的浪费的同时,提高营销的有效性。
- K-means算法原理以及应用(R)
- K-means算法原理以及其缺点
- K-means算法原理以及java实现
- k-means 算法原理
- K-means算法原理与R语言实例
- 聚类算法--K-Means(基于R的应用示例)
- k-means算法原理以及Scala调用MLlib实现
- K-Means原理分析以及其变种算法
- R聚类算法-(K-Means算法)
- Spark:K-Means||算法原理、K-Means++算法原理--52
- K-means算法原理实现
- K-Means++算法 及应用
- k-means 的原理,优缺点以及改进
- K-means以及K-Means++
- 层次聚类以及k-means算法
- K-Means聚类算法原理
- K-Means聚类算法原理
- K-means算法原理 blog收集
- Codeforces 148D Bag of mice 简单概率dp
- 【JSON】JSON初了解
- Java中变量的种类、变量的初始值
- car (CF 581E)
- 统计Txt中数字个数 并存入链表
- K-means算法原理以及应用(R)
- Android Fragment 基本介绍
- 神编辑器Sublime Text运行java、javascript、python
- HDU 5832 A water problem【大数问题】
- [BZOJ2119]股市的预测(后缀数组+st)
- android实现文件的拖拽效果
- LeetCode 344: Reverse String 题解
- 设计模式C++实现——抽象工厂模式
- Hadoop-StringTokenizer