博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
R聚类分析
阅读量:4318 次
发布时间:2019-06-06

本文共 941 字,大约阅读时间需要 3 分钟。

数据格式:时间(小时)/各个省份数据

数据输入:

locdata <- read.csv("./data.csv")

此时locdata的类型为:data.frame

需要转化为matric类型:

locdata_m <- as.matrix(locdata)

剔除数据:

locdata_mt <- locdata_mt[c(2: nrow(locdata_mt)), c(1: ncol(locdata_mt))]

接下来开始聚类运算:

分两个步骤:

1、确定计算距离方式

dist(x, method = "euclidean",diag = FALSE, upper = FALSE, p = 2) 

r语言中使用dist(x, method = "euclidean",diag = FALSE, upper = FALSE, p = 2) 来计算距离。其中x是样本矩阵或者数据框。

method表示计算哪种距离。method的取值有:

euclidean                欧几里德距离,就是平方再开方。
maximum                切比雪夫距离
manhattan            绝对值距离
canberra                Lance 距离
minkowski            明科夫斯基距离,使用时要指定p值
binary                    定性变量距离

(计算距离之前可以使用scale(x, center = TRUE, scale = TRUE)来对数据进行中心化及标准化。)

2、确定聚类方法

hclust(d, method = "complete", members=NULL) 

method表示类的合并方法,有:

single            最短距离法
complete        最长距离法
median        中间距离法
mcquitty        相似法
average        类平均法
centroid        重心法
ward            离差平方和法

 

d <- dist(locdata_mt, method = *)

hcl <- hclust(d, method = *)

最后以根节点对其的方式画图:

plot(hcl, hang = -1)

重合度图形展示:

heatmap(as.matrix)

 

转载于:https://www.cnblogs.com/sudz/p/4691885.html

你可能感兴趣的文章
oracle分页用子查询,[亲测]Oracle查询--子查询,分页查询(二)
查看>>
oracle动态语句怎么传参数值,DATAX动态参数数据传递
查看>>
php怎么设置文本区域,PHP txt下载不写文本区域内容
查看>>
linux各个目录名称,描述Linux发行版的系统目录名称命名规则以及用途
查看>>
linux 脚本里切换用户密码,shell,切换用户,执行指定,脚本
查看>>
linux配置无密码登陆,Linux下配置ssh无密码登录
查看>>
linux视频对讲qt方案,QT下视频通话的实现
查看>>
顺序串c语言,数据结构c语言实现定长顺序串
查看>>
linux 安装qq2014,Ubuntu14.04安装wine QQ
查看>>
android定位坑简书,Android 定位遇到的异常
查看>>
android udp开发,Android UDP
查看>>
html如何实现3d动画,[HTML5] HTML5 3D爱心动画及其制作过程
查看>>
html让控件垂直,css中实现元素垂直且水平居中的六种方法
查看>>
剔除所有html标签保留p标签,iOS-去掉字符串中的html标签的几种方法
查看>>
html $.post,jQuery $.post()方法的用法
查看>>
ASP.NET Core 中文文档 第二章 指南(4.5)使用 SQL Server LocalDB
查看>>
Maven使用心得
查看>>
新浪OAuth授权
查看>>
Entity Framework之 增删改查
查看>>
把OnDraw和OnPaint弄清楚(转贴)
查看>>