建议收藏!10 种 Python 聚类算法完整操作示例

Python09

建议收藏!10 种 Python 聚类算法完整操作示例,第1张

聚类分析。我们先从二维空间说起,比如一个组织中的雇佣关系存在四种模式,x轴和y轴分别代表着企业对员工提供的诱因与企业对员工期望的贡献。两个坐标轴划分出了四种雇佣关系,企业对员工提供的诱因与企业对员工期望的贡献两个指标共同可以反映一个企业的员工——组织关系,但在实践中,大量调查结果汇总起来的散点图会因为回答的差异,显现得有一些散乱。这时候,我们可以在每个象限中,对测量的指标在每个维度进行打分,对两个维度的得分进行计算均值,得到点M(xbar,ybar),我们可以根据其他点距离点M的几何距离d,在一个自定义L的范围内归类我们问卷调查中得到的回答,对这个L范围内的点归为一类。其他情境下,比如更多维的情况下,一个研究问题需要用多个指标以整体的方式出现,共同代表研究问题的特征,我们可以使用Kmeans聚类来进行数据的划分。Kmeans的思想是,将数据划分为指定的k个簇,簇的中心点由各个簇样本均值计算所得。对于指定的k个簇,簇内样本越相似,聚类效果越好。他的思想和OLS很相近,目的是簇内样本的离差平方和J达到最小。关于最佳k值的确定,因为随着簇数量增加,簇中样本量越来越少,簇内离差平方和J也会越来越小,J的拐点,簇内离差平方和突然减小的点,就是J对各个子簇中心求导为0的点,就是最佳的k值。对于一些我们可以直观分辨种类的情况,这里我引用了一个关于鸢尾花种类的数据

聚类分析是一类将数据所对应的研究对象进行分类的统计方法。这一类方法的共同特点是,事先不知道类别的个数与结构;进行分析的数据是表明对象之间的相似性或相异性的数据,将这些数据看成对对象“距离”远近的一种度量,将距离近的对象归入一类,不同类对象之间的距离较远。

[if !supportLineBreakNewLine]

[endif]

聚类分析根据对象的不同分为Q型聚类分析和R型聚类分析,其中,Q型聚类是指对样本的聚类,R型聚类是指对变量的聚类。本节主要介绍Q型聚类。

一、距离和相似系数

1.1 、距离 在聚类过程中,相距较近的样本点倾向于归为一类,相距较远的样本点应归属于不同的类。最常用的是Minkowski距离。当各变量的单位不同或变异性相差很大时,不应直接采用Minkowski距离,而应先对各变量的数据做标准化处理,然后用标准化后的数据计算距离。使用SciPy库spatial模块下的distance子模块可以计算距离,使用该子模块下的pdist函数可以计算n维空间中观测值之间的距离,其语法格式如下:

获取更多知识,前往前往我的wx ————公z号 (程式解说)

原文来自 https:// https://mp.weixin.qq.com/s/ZB1V8NZHJLfKFgIJgiRxOw