zoukankan      html  css  js  c++  java
  • R语言中的聚类的使用

    这里的聚类主要用到K-Means和K-Medoide聚类。在进行聚类之前,为了避免不同参数之间量纲不同所造成的影响,先将数据进行(0-1)标准化

    # 如参数weight
    data$weight <- (data$weight-min(data$weight))/(max(data$weight)-min(data$weight))

    K-Means算法

    1.读取数据

    data <- read.csv("data/km/data.csv",header = T)

    2.调用kmeans算法

    # 设置聚类数
    cluster_num <- 5
    # 调用kmeans算法
    km <- kmeans(data,cluster_num)

    3.查看分类情况和总体汇总

    # 查看具体分类情况
    fitted(km)   
    # 查看分类概括
    table(data$weight, km$cluster)  

    4.将结果保存

    # 构建新数据框映射
    df <- data.frame(km[[1]],data$weight)
    # 参数重新命名
    names(df) <- (c("classification_number","weight"))
    # 保存写入
    write.csv(df,file="data/km.csv")

    K-Medoide算法

    这里用到K-Medoide中对大样本数据处理的算法------CLARA算法

    1.下载cluster包

    install.packages("cluster")

    2.引入cluster包

    # 引入cluster包
    library(cluster)

    3.读取数据

    data <- read.csv("data/km/data.csv",header = T)

    4.调用CLARA算法

    # 设置聚类数
    cluster_num <- 5
    # 调用CLARA算法
    cl <- clara(data,cluster_num)

    5.将结果保存

    # 构建新数据框映射
    df <- data.frame(cl$clustering,data$weight)
    #参数重新命名
    names(df) <- (c("classification_number","weight"))
    # 写入 write.csv(df,file
    ="data/clara.csv")
  • 相关阅读:
    idea config 文件
    python 时间相关
    python 限定类型
    windows 创建文件夹 链接
    java 笔记
    yml 字符串换行问题
    nginx 编译安装,问题
    git readme.md 文档头部写法
    git tag 相关操作
    敏捷开发
  • 原文地址:https://www.cnblogs.com/xiaomingzaixian/p/9269167.html
Copyright © 2011-2022 走看看