zoukankan      html  css  js  c++  java
  • R语言简单实现聚类分析计算与分析(基于系统聚类法)


    聚类分析计算与分析(基于系统聚类法)

    下面以一个具体的例子来实现实证分析。2008年我国其中31个省、市和自治区的农村居民家庭平均每人全年消费性支出。

    根据原始数据对我国省份进行归类统计。

                                                                   原始数据如下

    注:数据来源—www.stats.gov.cn(中华人民共和国国家统计局)

    代码如下:

    #读入数据
    china <- read.table("F:\2008年我国其中31个省、市和自治区的农村居民家庭平均每人全年消费性支出.txt",header=TRUE)
    distance <- dist(china)  #计算距离
    china.hc <- hclust(distance) #聚类分析,最长距离法
    plot(china.hc, hang = -1) #绘画系谱图 
    re <- rect.hclust(china.hc, k = 5) #分为5类

    re
    for (i in 1:5) {
    print(paste("第",i,"类"))
    print(china[re[[i]],]$地区)
    }

    china.hc <- hclust(distance,method="single") #聚类分析,最短距离法
    plot(china.hc, hang = -1) #绘画系谱图 
    re <- rect.hclust(china.hc, k = 5) #分为5类

    china.hc <- hclust(distance,method="average") #聚类分析,类平均法
    plot(china.hc, hang = -1) #绘画系谱图 
    re <- rect.hclust(china.hc, k = 5) #分为5类

    china.hc <- hclust(distance,method="centroid") #聚类分析,重心法
    plot(china.hc, hang = -1) #绘画系谱图 
    re <- rect.hclust(china.hc, k = 5) #分为5类

    china.hc <- hclust(distance,method="median") #聚类分析,中间距离法
    plot(china.hc, hang = -1) #绘画系谱图 
    re <- rect.hclust(china.hc, k = 5) #分为5类

    china.hc <- hclust(distance,method="ward") #聚类分析,离差平方和法
    plot(china.hc, hang = -1) #绘画系谱图 
    re <- rect.hclust(china.hc, k = 5) #分为5类

     以上实现了不同聚类分析计算两个类距离算法得出的不同结果。

     根据离差平方和法可将我国省份作出以下分类:

    第一类:北京 上海 浙江

    第二类:江苏 福建 广东

    第三类:江西 湖北 湖南 四川

    第四类:天津   河北   辽宁   黑龙江 安徽   山东   河南   云南

    第五类:山西   内蒙古 吉林   广西   海南   重庆   贵州   西藏   陕西   新疆   甘肃   青海   宁夏 

     

  • 相关阅读:
    OpenCV在MFC图像控件内显示图像
    Android APK反编译具体解释(附图)
    Android下用Properties保存程序配置
    王灏:光音网络致力打造Wi-Fi大生态圈
    解决ccSvcHst.exe CPU占用超50%的问题,及其缘由
    配置管理工具比較
    应用程序无法正常启动0xc0150002 解决方式
    现有一些开源ESB总线的比較
    使用GridView自带分页的代码
    Hadoop 2.4.0新特性介绍
  • 原文地址:https://www.cnblogs.com/yanwensheng/p/5676303.html
Copyright © 2011-2022 走看看