X=[1 0 1 0 0 1 1 1;
0 0 0 1 1 0 1 0;
1 1 0 1 0 1 0 1;
1 0 1 0 1 0 1 0;
0 0 0 0 1 1 1 0;
1 1 1 0 0 0 1 1;
1 0 1 0 1 1 1 0;
0 1 0 1 1 0 1 1];
[IDX,C] = kmeans(X,3, 'distance', 'hamming')
ハミング距離を使用してバイナリデータをクラスター化する方法をテストしたかったので、上記のコードでは、Xにバイナリ値の行列をランダムに割り当てました。ただし、問題は、重心が10進値であるということです。以下に示すように。
C=
1.0000 1.0000 1.0000 0 0 1.0000 1.0000 1.0000
0 0.5000 0 1.0000 1.0000 0 1.0000 0.5000
1.0000 0 0.5000 0 1.0000 1.0000 1.0000 0
なぜ答えに0.5があるのですか?図心もバイナリにしたいです。また、バイナリデータのためにオーバーラップなしでクラスターをプロットすることは可能ですか?