我正在使用clvalid包中的函数clvalid,并使用
fanny
争论。
intvalid <- clValid(clust, 2:10, clMethods=c("fanny"),
validation="internal", metric='euclidean', maxitems = 1000)
但是,我想用
SqEuclidean
,因此使用模糊c均值聚类而不是模糊聚类。我知道
屁股
clvalid中的算法来自群集包。我知道只有三种选择是欧几里德、相关和曼哈顿,因此没有办法将距离设置为
SqEuclidean.
如何使用模糊c-均值聚类执行clvalid?或者我误解了
metric
clvalid中fanny函数的参数?
指定用于计算观测值之间差异的度量的字符串。选项有“euclidean”(默认)、“manhattan”和“sqeuclidean”。欧几里德距离是差平方根和,曼哈顿距离是绝对差平方和,而“sqeucliden”,平方欧几里德距离是差平方和。使用最后一个选项相当于(但有点慢)计算所谓的模糊c-均值。如果x已经是一个不同的矩阵,那么这个参数将被忽略。
数据
library(dplyr)
library(cluster)
library(clValid)
df<-iris[,-5] # I do not use iris, but to make reproducible
clust<-sapply(df,scale)