KMeans实现 大数据作业五 - GongRuqin/bigdata GitHub Wiki

代码: Kmeans.java [Kmeans]: https://github.com/GongRuqin/bigdata/blob/master/KMeans.java
Cluster.java [cluster]:https://github.com/GongRuqin/bigdata/blob/master/Cluster.java
[KMeansDriver]:https://github.com/GongRuqin/bigdata/blob/master/KMeansDriver.java
[KMeansCluster.java]: https://github.com/GongRuqin/bigdata/blob/master/KMeansCluster.java
[Instance.java]:https://github.com/GongRuqin/bigdata/blob/master/Instance.java [RandomClusterGenerator.java]:https://github.com/GongRuqin/bigdata/blob/master/RandomClusterGenerator.java

在三维空间中,进行聚类KMeans。
源数据:Instance.txt.
内容:
2,1,3
3,2,5
4,4,4
2,3,1
4,0,1
1,2,3
5,3,2
3,4,1
0,2,3
0,2,5
2,1,4
4,1,4
0,3,2
1,3,1
3,3,4
3,5,3
2,3,2
4,3,3
1,4,3
3,2,3

运行结果:
分为四类,进行8次迭代:
command:

运行结果:最后的clusteredinstances文件夹中有效内容
2,1,3 2
3,2,5 2
4,4,4 1
2,3,1 4
4,0,1 4
1,2,3 3
5,3,2 1
3,4,1 4
0,2,3 3
0,2,5 3
2,1,4 2
4,1,4 2
0,3,2 3
1,3,1 4
3,3,4 1
3,5,3 1
2,3,2 4
4,3,3 1
1,4,3 3
3,2,3 2

最后一列为所属的类id

画图:

分为四类,进行20次迭代:
运行结果:
2,1,3 1
3,2,5 1
4,4,4 3
2,3,1 4
4,0,1 1
1,2,3 2
5,3,2 3
3,4,1 4
0,2,3 2
0,2,5 2
2,1,4 1
4,1,4 1
0,3,2 2
1,3,1 4
3,3,4 3
3,5,3 3
2,3,2 4
4,3,3 3
1,4,3 2
3,2,3 1

画图:

分为三组,进行33次迭代: 运行结果:
2,1,3 2
3,2,5 2
4,4,4 2
2,3,1 3
4,0,1 1
1,2,3 3
5,3,2 1
3,4,1 1
0,2,3 3
0,2,5 2
2,1,4 2
4,1,4 2
0,3,2 3
1,3,1 3
3,3,4 2
3,5,3 3
2,3,2 3
4,3,3 1
1,4,3 3
3,2,3 2

画图: