一、定义:将物理或抽象对象的集合分成由类似的对象组成的多个类的过程被称为聚类

二、距离:欧几里得度量(euclidean metric)也称欧氏距离

      绝对值距离(manhattan)

      Lance距离(canberra)

      定性变量距离(binary)

      闵可夫斯基距离(minkowski)

三、使用函数dist()求点之间的距离,可以设置不同的方法,这里设置的是欧式距离,其操作对象是数据框,结果是得到一个距离矩阵

四、聚类

1.使用的方法:

最短距离法-------single

最长距离法-------complete

中间距离法-------median

类平均法---------average

重心法-----------centroid

离差平方和法-------ward

Mcquitty相似法--------maquitty

2.对数据对聚类之前一般要对数据进行处理,这里说的处理是对数据做中心化、标准化变换,使用函数scale()

数据的中心化和标准化:

数据中心化:是指数据集中的各项数据减去数据集的均值

数据标准化:是指在中心化之后在除以数据集的标准差,即数据集中的各项数据减去数据集的均值再除以数据集的标准差

mean()是求平均值,sd()是求标准差

在R中实现数据标准化和中心化可以使用函数scale(),第一个参数是操作的对象,第二个参数是进行中心化,当为TRUE时,第三个参数是进行标准化,当为TRUE时

3.进行聚类操作使用的函数时hclust(),第一个参数时操作对象,即上述使用函数dist()求出的距离矩阵,第二个参数时设置使用的方法,比如最短距离法(single)、最长距离法(complete)等,聚类的结果是展示出它的谱系图

函数plot()是绘制图形的,针对不同的数据类型绘制不同类型的图,暂时先不介绍

步骤:

1)给出数据,一般这个过程会做数据的中心化和标准化转变

2)计算出x的距离矩阵

3)进行聚类

结果分析:从谱系图明显可以看到,1和1先聚为一类,然后3和4再聚,后来5和3、4聚,最后聚一起

问题:聚类可以聚多少类?

一般是使用rect.hculse()函数进行人为指定,所说的人为指定,是大概肉眼能判断出聚为几类,这一点不如其他的软件,这里设置k=2,即聚为两类,这里的红色线是分类线

五、聚类的谱系图:使用函数as.dendrogram(),可以通过设置参数,从而得到不同类型的谱系图

第一种:

      

第二种:

第三种:

edgePar  绘图参数的列表,用于边缘段和标签,

dege.root =T/F  逻辑值,如果是真的,就画一条边到根节点。

第四种:

nodepar  用于节点的绘图参数列表(见点)或默认为NULL,不在节点上绘制符号

horiz=T/F 表示树状图是否应该被水平绘制的逻辑

R-聚类的更多相关文章

  1. 每R一点:层次聚类分析实例实战-dist、hclust、heatmap等(转)

    聚类分析:对样品或指标进行分类的一种分析方法,依据样本和指标已知特性进行分类.本节主要介绍层次聚类分析,一共包括3个部分,每个部分包括一个具体实战例子. 1.常规聚类过程: 一.首先用dist()函数 ...

  2. 用TSNE进行数据降维并展示聚类结果

    TSNE提供了一种有效的数据降维方式,让我们可以在2维或3维的空间中展示聚类结果. # -*- coding: utf-8 -*- from __future__ import unicode_lit ...

  3. [原]CentOS7安装Rancher2.1并部署kubernetes (二)---部署kubernetes

    ##################    Rancher v2.1.7  +    Kubernetes 1.13.4  ################ ##################### ...

  4. 利用python进行数据分析2_数据采集与操作

    txt_filename = './files/python_baidu.txt' # 打开文件 file_obj = open(txt_filename, 'r', encoding='utf-8' ...

  5. Django项目:CRM(客户关系管理系统)--81--71PerfectCRM实现CRM项目首页

    {#portal.html#} {## ————————46PerfectCRM实现登陆后页面才能访问————————#} {#{% extends 'king_admin/table_index.h ...

  6. R与数据分析旧笔记(十五) 基于有代表性的点的技术:K中心聚类法

    基于有代表性的点的技术:K中心聚类法 基于有代表性的点的技术:K中心聚类法 算法步骤 随机选择k个点作为"中心点" 计算剩余的点到这个k中心点的距离,每个点被分配到最近的中心点组成 ...

  7. R与数据分析旧笔记(十三) 聚类初步

    聚类 聚类 关键度量指标:距离 常用距离 绝对值距离 绝对值距离也称为"棋盘距离"或"城市街区距离". 欧氏(Euclide)距离 闵可夫斯基(Minkowsk ...

  8. R语言-混合型数据聚类

    利用聚类分析,我们可以很容易地看清数据集中样本的分布情况.以往介绍聚类分析的文章中通常只介绍如何处理连续型变量,这些文字并没有过多地介绍如何处理混合型数据(如同时包含连续型变量.名义型变量和顺序型变量 ...

  9. ML: 聚类算法R包-模糊聚类

    1965年美国加州大学柏克莱分校的扎德教授第一次提出了'集合'的概念.经过十多年的发展,模糊集合理论渐渐被应用到各个实际应用方面.为克服非此即彼的分类缺点,出现了以模糊集合论为数学基础的聚类分析.用模 ...

  10. ML: 聚类算法R包 - 模型聚类

    模型聚类 mclust::Mclust RWeka::Cobweb mclust::Mclust EM算法也称为期望最大化算法,在是使用该算法聚类时,将数据集看作一个有隐形变量的概率模型,并实现模型最 ...

随机推荐

  1. 【BUAA软工】Beta阶段设计与计划

    一.需求再分析 根据用户反馈,是否发现之前的需求分析有偏差?为什么会出现这种偏差?beta阶段你们是否能真的分析清楚用户需求?如何做到? 根据alpha阶段同学们以及课程组老师和助教的使用反馈,总结起 ...

  2. 技术博客:Azure 认知服务

    Azure 认知服务 1.概述 ​ 微软认知服务(Microsoft Cognitive Services)集合了多种智能API以及知识API,使每个开发人员无需具备机器学习的专业知识就能接触到 AI ...

  3. [前端、HTTP协议、HTML标签]

    [前端.HTTP协议.HTML标签] 什么是前端 """ 任何与用户直接打交道的操作界面都可以称之为前端 比如:电脑界面 手机界面 平板界面 什么是后端 后端类似于幕后操 ...

  4. stressapptest测试用例testcase方法aarch64

    ### https://github.com/stressapptest/stressapptest aarch64 To build from source, the build/installat ...

  5. rpm -ql BackupPC |grep etc

    # rpm -ql BackupPC |grep etc/etc/BackupPC/etc/BackupPC/config.pl/etc/BackupPC/hosts/etc/httpd/conf.d ...

  6. 字符串算法(string_algorithm)

    format 作用 格式化输出对象,可以不改变流输出状态实现类似于printf()的输出 头文件 #include <boost/format.hpp> using namespace b ...

  7. 初遇SpringBoot踩坑与加载静态文件遇到的坑

                              SpringBoot开发 创建SpringBoot项目 大家都知道SpringBoot开发非常快,创建SpringBoot项目时,勾上SpringW ...

  8. unittest的前置后置,pytest的fixture和共享机制conftest.py

    Unittest setUp/tearDown setUp当中得到的变量,用self.xxx = value传递给测试用例 setUpClass/tearDownClass setupClass当中得 ...

  9. Map / Set / Treeset 取出指定下标index的元素

    Treeset 属于 set  集合中的一种数据类型,HashSet 以及LinkedHashSet 原理相同 需求:想直接在Treeset类型下,取出指定下标的元素,但是Set 下没有 get()方 ...

  10. ASP.NET Core MVC 入门到精通 - 1. 开发必备工具 (2021)

    环境: .NET 5 ASP.NET Core MVC 1. .NET 5 作为一个资深.NET工程师,说句实话,.NET没落了,在国内更加的没落.之前做过8年node.js/前端,现如今又转回了.N ...