聚类分析就是把一组数据分成多个类,让同类之间的数据具有相似性,不同类之间的数据具有差异性。
举个例子,比如说你是一个淘宝店的店主,你的消费者里面有一部分人很喜欢在晚上的时候就买一些打折的商品。还有一些消费者喜欢在周末的时候去买一些店铺里的新品。你就可以根据消费者的购物时间,购买件数,购买金额等这些变量来对他们进行分类。
为什么要进行聚类分析呢?
把消费者进行细分之后,针对不同的消费者制定不同的营销策略。
比如对消费者进行聚类之后,你发现有些消费者总喜欢在晚上的时候买一些打折的商品,那这时候你可以针对这部分消费者在晚上多做一些打折的活动。有些消费者他喜欢在周末的时候去买些新品,那你就在周末的时候多上一些新品,这样根据消费者的不同特性,来制定不同的营销策略和店铺的运营方法。
那么怎么样来进行聚类呢?
我们先看一个例子,总共有十六张扑克牌,我们可以把这十六张扑克牌分成几类呢?可以有多少种分法?

1、分成四组,每组里花色相同,组与组之间花色相异

2、分成四组,符号相同的牌为一组

3、分成两组,颜色相同的牌为一组

4、分成两组,大小程度相近的牌分到一组

这个例子告诉我们,聚类的意义在于我们怎么定义并度量“相似性”,因此衍生出一系列度量相似性的算法
度量相似性的算法有两类:
1、距离:根据样本数据的远近进行分类
2、相关性:根据变量之间的相关性进行分类
具体的分类算法有四种:
1、层次方法:自顶往下或者自底往上分类
2、划分方法:常见的是K均值方法,先选定几个值,把这几个值当做中心点,然后根据其他值到这几个值中心点的距离分类,分类之后计算每一类的均值再作为中心点划分,反复执行这个步骤把数据进行分类
3、基于密度的划分:根据数据的密度进行分类
4、基于网格的划分:根据数据所在的位置进行分类
网友评论