k-means聚类分析移动电话客户使用情况

2019/2/18-星期一-下雨天 

今天利用spss做了一个关于移动电话客户手机通话时间聚类分析的案例。一看K-means聚类分析以为很高大尚,其实用spss来做,就只是点点两三下的事情,但是对数据本身的解析才是最重要的地方。

首先先讲两个概念k-means是什么,聚类又是什么?

一、概念理论

图1:k-means算法是什么

①、K均值聚类算法(k-means算法),又叫快速聚类法,可以用于大量数据进行聚类分析的情形。

算法实现的概要如下:

1、初始化常数k,随机选取初始点为质心。
2、重复计算以下过程,直到质心不在改变。

              2.1、计算样本与每个质心之间的相似度,将样本归类到最相似的类中;

              2.2、重新计算质心;

3、输出最终的质心以及每个类。

图2:聚类是什么

②、聚类是组成多个类的过程,常常让人联想到分类。个人认为,聚类归属无监督,分类归属有监督;完全由数据本身自发的分类。

二、模型分析

①数据预处理

原始数据:https://pan.baidu.com/s/1pRnxBD0SC6znuOC3qJPP2w,包含客户编号、工作日上班时间通话时长、工作日下班通话时长、周末电话通话时长、国际电话时长、总通话时长、平均每次通话时长。

图3:原始数据所包含数据

我们需要对数据进行常规空值,异常值,数据类型,统计口径是否符合等检测数据是否合理。

接着查看变量的描述统计指标,可以看出周末电话时长的标准差跟其他数据相差较大,虽然各个变量的统计时间长度其实是不同,但是这边考虑作为独立的变量,所以需要对数据进行进行标准化处理。

图4:描述统计指标

数据标准化处理:分析--描述---

图5:标准化处理

②尝试性进行k-means迭代:

图6:初始迭代步骤

聚类数5,迭代次数5次;聚类数5以及迭代次数5次都是用户自己定义的。点击【确定】

图7

输出运行结果:包括初始聚类中心、迭代历史记录、最终聚类中心、聚类个案数。

图8
图9
图10

其中根据图10,我们看出迭代没能到达收敛,需要增加迭代次数,这里我增加到100次。

图11
图12:迭代记录
图13

为了能够看到每一条数据别分到哪一类中,所以我们需要保存聚类成员,在k-means迭代选择面版中选择,保存,勾选。

图14

标准化后的结果,我们并没有很直观地观察数据结果,所以操作【分析】--【比较平均值】--【平均值】

图15
图16

这一就是我们最终所希望看到分类各类均值结果。

图17

接下来我们需要解读我们分类好的每一类数据。

第一类:总通话时长,国际电话时长、工作日通话时长(上班、下班)都是比较高的。这类用户数量为443人。总通话时长也是各类中最高的,并且上班时间通话时长也是最高的,所以可以将这类客户定义为“高端商用客户”。

第二类:总通话时长,国际通话时长,工作日通话时长(上班,下班)都是比较低的。这类用户数量为1239人。总通话时长在各类中是最低的。上班通话时长(上班,下班)也是最低到的,所以可以将这类客户定义为“少用低端客户”。

第三类:总通话时长,国际通话时长都是中等的。这类用户数量831人。该类客户上班通话时长在总通话时长中占比相当高。所以这类客户可以定义为“中端商用客户”。

第四类:总通话时长,国际通话时长都是中等的。这列用户数量809人。这类客户下班通话时长在总通话时长中占比相当高。所以这类客户可以定义为“中端日常客户”。

第五类:最明显的特征是平均通话时长为22.67。相对于其他类的通话时长高了5倍以上。所以可以定义这类客户为“长聊客户”

图18

你可能感兴趣的:(k-means聚类分析移动电话客户使用情况)