R数据挖掘 第二篇:基于距离评估数据的相似性和相异性

聚类分析根据对象之间的相异程度,把对象分成多个簇,簇是数据对象的集合,聚类分析使得同一个簇中的对象相似,而与其他簇中的对象相异。相似性和相异性(dissimilarity)是根据数据对象的属性值评估的,通常涉及到距离度量。相似性(similarity)和相异性(dissimilarity)是负相关的,统称为临近性(proximity)。

在聚类分析中,聚类算法的第一步都是度量数据集对象之间的距离,实际操作步骤是:对数据矩阵(用于存储数据对象)进行无量纲化处理,应用距离算法,得到相异性矩阵(用于存放数据对象的相异性值)。

注意:在计算距离之前,首先对数据进行无量纲化处理。

一,数据矩阵和相异性矩阵

假设我们有n个对象(如人),被p个属性(又称维或特征,如年龄、身高、体重或性别)刻画,这些对象记作x1=(x11,x12,…,x1p),x2=(x21,x22,…,x2p),等等,其中xij是对象xi的第j个属性的值,对象xi也称作对象的特征向量。把xi的集合叫做数据矩阵,各个对象之间的距离构成的矩阵,叫做相异性矩阵,通常情况下,常用的聚类算法都需要在这两种数据结构上运行。

1,数据矩阵

数据矩阵(data matrix)或称对象-属性结构:这种数据结构用关系表的形式或n×p(n个对象×p个属性)矩阵存放n个数据对象:

2,相异性矩阵

相异性矩阵(dissimilarity matrix)或称对象-对象结构:存放n个对象两两之间的邻近度(proximity),通常用一个n×n矩阵表示:

其中d(i,j)是对象i和对象j之间的相异性或“差别”的度量,一般而言,d(i,j)是一个非负的数值,对象i和j彼此高度相似或“接近”时,其值接近于0;而越不同,该值越大。注意,d(i,i)=0,即一个对象与自己的差别为0。此外,d(i,j)=d(j,i)。(为了易读性,我们不显示d(j,i),该矩阵是对称的。)

数据矩阵由两种不同类型的实体或“事物”组成,即行(代表对象)和列(代表属性)。因而,数据矩阵经常被称为二模(two-mode)矩阵。相异性矩阵只包含一类实体,因此被称为单模(one-mode)矩阵。许多聚类和最近邻算法都在相异性矩阵上运行,对于基于距离的相异性矩阵,可以使用stats包中的dist()函数把数据矩阵转换为相异性矩阵。

二,数值属性的距离度量

在聚类分析过程中,需要把数据对象区分为不同的类,那么对象是如何划分到不同的类别当中的呢?判断不同对象是否归于一类依据的是对象之间的相似性。对象相似性的度量标准一般有两种:距离和相似性系数,距离一般用来度量观测之
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值