聚类是一种常见的分析手段,当然,你也可以用它来进行数据探索,
这里给大家做一个例子,利用Sklearn包对山东省的经济数据进行聚类分析。
首先是数据:
以前用来做GWR的数据(2015年,来自山东省统计局)
数据一共是五个维度,分别是:
财政收入
工业生产总值
消费品零售额
总出口
固定资产投资
信息描述如下:
一般来说,这五个维度通常代表了一个地区的经济发展和产业构成情况,所以用他们来做经济分析,还是比较具有代表性的。
以前我们用这份数据做过地理加权回归,有兴趣的同学可以回去看看,相对聚类来说,GWR对经济结构的解析更加深刻,这里就不说,这里仅做技术性的介绍。
聚类方法直接选最简单粗暴的K-Means,原理我就不介绍了,有兴趣的同学自行搜索。
先来看看结果,我们把山东各区县,分成五个类别,那么分类的结果如下:
根据聚类的原则,分为同一类别的,具有更大的相似性,所以,这里具有同样颜色的区县,他们的经济结构具有更大的相似性。
这就是为什么要用多个维度的原因了,大家可以想想,如果只用一个维度,那么也就是大小多少的分类专题图,而用多个维度,所表达的,就更多是五个维度组合起来所表示的结构相似度了。
那么我们分别把五个维度的数据,都做一个单独的聚类,看看效果:
注意,里面任意两张图之间的颜色,没有任何相关性的意义,仅在本张图以内,表达不同类别所用。
从下面五个维度单独做聚类,与五个维度综合做聚类的对比可以看出来有这样一下特点:
1、山东的经济结构还是具有比较强的相关性的,大片大片的连续相关区域。
2、青岛比较特别,与山东临海与靠近内陆的中间,有胶州、即墨这一个所谓的“大陆隔断墙”,形成原因是什么,大家可以深入研究。
3、总出口的聚类情况,出现了几个比较特别的区域,首先就是烟台市的福山区,之后就是青岛的大陆隔断墙了……,先看看福山区的情况:
按照总出口一排序,福山区的总出口在山东排名第一,而且超出第二名接近两倍……那是绝对的一骑绝尘啊。
4、固定资产投资,也出现了一个巨大的异常值:青岛市的黄岛区,固定资产投资超出第二名接近2倍。
最后,晒出源码:
最后是代码和数据:
Github :
https://github.com/allenlu2008/PythonDemo