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")
  • 相关阅读:
    扯一扯纯函数
    10.28
    10.27 动手动脑5
    10.26
    10.25 周总结
    10.23
    10.22
    10.21 动手动脑4
    10.20
    10.19
  • 原文地址:https://www.cnblogs.com/xiaomingzaixian/p/9269167.html
Copyright © 2011-2022 走看看