Algorithm R kmeans初始化
在R编程环境中,我目前正在使用Algorithm R kmeans初始化,algorithm,r,initialization,k-means,Algorithm,R,Initialization,K Means,在R编程环境中,我目前正在使用kmeans算法的标准实现(类型:help(kmeans))。似乎无法初始化起始质心。我指定kmeans算法,给我4个簇,我想传递起始质心的向量坐标 是否有kmeans的实现来允许我传递初始质心坐标 对。您提到的实现允许您指定起始位置。您可以通过中心参数传递它们 > dat <- data.frame(x = rnorm(99, mean = c(-5, 0 , 5)), y = rnorm(99, mean = c(-5, 0, 5))) > p
kmeans
算法的标准实现(类型:help(kmeans)
)。似乎无法初始化起始质心。我指定kmeans
算法,给我4个簇,我想传递起始质心的向量坐标
kmeans
的实现来允许我传递初始质心坐标对。您提到的实现允许您指定起始位置。您可以通过
中心
参数传递它们
> dat <- data.frame(x = rnorm(99, mean = c(-5, 0 , 5)), y = rnorm(99, mean = c(-5, 0, 5)))
> plot(dat)
> start <- matrix(c(-5, 0, 5, -5, 0, 5), 3, 2)
> kmeans(dat, start)
K-means clustering with 3 clusters of sizes 33, 33, 33
Cluster means:
x y
1 -5.0222798 -5.06545689
2 -0.1297747 -0.02890204
3 4.8006581 5.00315151
Clustering vector:
[1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2
[51] 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
Within cluster sum of squares by cluster:
[1] 58.05137 73.81878 52.45732
(between_SS / total_SS = 94.7 %)
Available components:
[1] "cluster" "centers" "totss" "withinss" "tot.withinss" "betweenss"
[7] "size"
>dat图(dat)
>启动kmeans(dat,start)
K-均值聚类,3个大小为33、33、33的聚类
集群是指:
xy
1 -5.0222798 -5.06545689
2 -0.1297747 -0.02890204
3 4.8006581 5.00315151
聚类向量:
[1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2
[51] 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
簇内按簇计算的平方和:
[1] 58.05137 73.81878 52.45732
(介于/总数=94.7%之间)
可用组件:
[1] “群集”“中心”“totss”“带INSS”“tot.带INSS”“在S之间”
[7] “尺寸”
centers参数应该允许您这样做。