R语言学习_聚类方法

聚类
距离(点和点、类和类)
相关系数
层次聚类法
K-means聚类法

聚类(“物以类聚,人以群分”)
聚类是一种无监督的学习,使用聚类不需要提前被告知要划分的组是什么样的,甚至在我们不知道找什么时就自动完成分组。
根据样本点的几何特征完成分类
距离

距离————样本(点)之间相似程度
    闵可夫斯基距离(Minkowski)
        棋盘距离(曼哈顿距离)
        欧式距离
        切比雪夫距离(Chebyshev)
    Lance距离
    二进制距离
        m1: 1-1配对的数量
        m0: 0-0配对的数量
        m2: 不配对的数量
            d = m2/(m1+m2)

R语言
dist函数
dist(x,method = “euclidean”,diag = F,upper = F,p = 2)
其中x是样本矩阵或者数据框。
method参数
euclidean:欧式距离
maximum:切比雪夫距离
manhattan:曼哈顿距离
canberra:Lance距离
minkowski:闵可夫斯基距离,这时参数p定义阶数
binary:二进制距离
diag 为TRUE的时候给出对角线上的距离。
upper为TURE的时候给出上三角矩阵上的值。

    示例:
        > set.seed(12345)       # 设定产生随机数的初始值
        > (x = rnorm(20,mean = rep(1:4,each = 5)*10,sd = 3))
         [1] 11.756586 12.128398  9.672090  8.639508 11.817662 14.546132 21.890296
         [8] 19.171448 19.147521 17.242034 29.651257 35.451936 31.111884 31.560649
        [15] 27.748404 42.450700 37.340927 39.005267 43.362138 40.896171
        > (y = rnorm(20,mean = rep(c(1,2,3,2),each = 5)*10,sd = 3))
         [1] 12.338866 14.367355  8.067015  5.340588  5.206871 25.415293 18.555058
         [8] 21.861139 21.836370 19.513067 32.435620 36.590501 36.147571 34.897337
        [15] 30.762814 21.473565 19.027740 15.013849 25.303202 20.077403
        > (df = data.frame(x = x, y = y))
        > (dists = dist(df,method = 'minkowski',diag = T,p = 3))

注:set.seed()用于设定随机数种子,一个特定的种子可以产生一个特定的伪随机序列,这个函数的主要目的,是让你的模拟能够可重复出现࿰

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值