这里的聚类主要用到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 <-
# 调用kmeans算法
km <- kmeans(data,cluster_num)

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

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

4.将结果保存

# 构建新数据框映射
df <- data.frame(km[[]],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 <-
# 调用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")

R语言中的聚类的使用的更多相关文章

  1. R语言中基于聚类的离群点挖掘

    思路:首先,通过K-means算法将数据点划分为成若K个簇:然后计算每一个数据对象到最近簇的中心距离,来与离群点设置的阈值进行比较,以此来判别该数据对象是否是离群点. 1.读取数据 data<- ...

  2. R语言中样本平衡的几种方法

    R语言中样本平衡的几种方法 在对不平衡的分类数据集进行建模时,机器学习算法可能并不稳定,其预测结果甚至可能是有偏的,而预测精度此时也变得带有误导性.在不平衡的数据中,任一算法都没法从样本量少的类中获取 ...

  3. 【机器学习与R语言】11- Kmeans聚类

    目录 1.理解Kmeans聚类 1)基本概念 2)kmeans运作的基本原理 2.Kmeans聚类应用示例 1)收集数据 2)探索和准备数据 3)训练模型 4)评估性能 5)提高模型性能 1.理解Km ...

  4. 机器学习:R语言中如何使用最小二乘法

    详细内容见上一篇文章:http://www.cnblogs.com/lc1217/p/6514734.html 这里只是介绍下R语言中如何使用最小二乘法解决一次函数的线性回归问题. 代码如下:(数据同 ...

  5. R+openNLP︱openNLP的六大可实现功能及其在R语言中的应用

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- openNLP是NLP中比较好的开源工具,R语 ...

  6. R语言中的横向数据合并merge及纵向数据合并rbind的使用

    R语言中的横向数据合并merge及纵向数据合并rbind的使用 我们经常会遇到两个数据框拥有相同的时间或观测值,但这些列却不尽相同.处理的办法就是使用merge(x, y ,by.x = ,by.y ...

  7. R语言中数据结构

    R语言还是有点古老感觉,数据结构没有Python中那么好用.以下简单总结一下R语言中经常使用的几个数据结构. 向量: R中的向量能够理解为一维的数组,每一个元素的mode必须同样,能够用c(x:y)进 ...

  8. R语言中的数据处理包dplyr、tidyr笔记

    R语言中的数据处理包dplyr.tidyr笔记   dplyr包是Hadley Wickham的新作,主要用于数据清洗和整理,该包专注dataframe数据格式,从而大幅提高了数据处理速度,并且提供了 ...

  9. R语言中的四类统计分布函数

    R语言中提供了四类有关统计分布的函数(密度函数,累计分布函数,分位函数,随机数函数).分别在代表该分布的R函数前加上相应前缀获得(d,p,q,r).如: 1)正态分布的函数是norm,命令dnorm( ...

随机推荐

  1. [k8s]metricbeat的kubernetes模块&kube-metric模块

    正确姿势启动metricbeat metricbeat.modules: - module: system metricsets: - cpu - filesystem - memory - netw ...

  2. Linux 内存中的Cache,真的能被回收么?

    您真的了解Linux的free命令么? 在Linux系统中,我们经常用free命令来查看系统内存的使用状态.在一个RHEL6的系统上,free命令的显示内容大概是这样一个状态: 这里的默认显示单位是k ...

  3. SSH 限制

    SSH 限制 限制 SSH 连接 通过使用用户.组和拒绝/允许条目限制 SSH 用户连接您的主机.还可以针对各个主机使用 TCP Wrappers. 评论 David Tansley, 系统管理员, ...

  4. linux 密码破解

    (一)Linux 系统密码破解 1.在grub选项菜单按E进入编辑模式 2.编辑kernel那行 /init 1 (或/single) 3.按B重启 4.进入后执行下列命令 root@#passwd ...

  5. c# 程序调试出现“未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。”

    简单的程序代码如下:DataSet ds=new DataSet();try{ string strCon = @"Provider=Microsoft.Jet.OLEDB.4.0;Data ...

  6. haproxy+keepalived实现高可用负载均衡(转)

      软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第三方应用的软负载实现.LVS就是基于Linux操作系统实现的一种软负载,HAProxy就是开源的并且基于第三应用实现的软负载. ...

  7. [ADC]Linux ADC驱动

    ADC TI adc user guide: http://processors.wiki.ti.com/index.php/Linux_Core_ADC_Users_Guide 问题: 在tools ...

  8. asp.net 正在加载效果实现

    最近研究了下asp.net 正在加载的实现原理,总结了以下实现方法 首先,我们有个div显示内容为正在加载..   当然也可以考虑用图片或者其他的,不过考虑到速度,建议直接文字提示就行,然后设置div ...

  9. python文件编码说明 coding=utf-8

    python 支持3种编码声明,一般常用能见到下面两种 1.# -*- coding: utf-8 -*- 这种写法是为了兼容Emacs的编码声明 2.短一点,但Emacs不能用# coding=ut ...

  10. python 神经网络实例

    #http://python.jobbole.com/82758/ # import numpy as np # # # # sigmoid function # def nonlin(x, deri ...