2016-08-15 8 views
-1
import Pycluster as PC 
matrix=([ 0. , 1.47, 2.43, 3.44, 1.08], 
[ 1.47, 0. , 1.5 , 2.39, 2.11], 
[ 2.43, 1.5 , 0. , 1.22, 2.69], 
[ 3.44, 2.39, 1.22, 0. , 3.45], 
[ 1.08, 2.11, 2.69, 3.45, 0.]) 
cluster,medoids,error=PC.kmedoids(matrix,3) 
print(cluster) 

私は私の距離行列にkmedoidsを適用します。私のデータのクラスターラベルを印刷すると、リスト内の組み合わせ番号が25回表示されます。時には2,25,26です。時には2,64,66です。例:アイテムのラベル番号と番号iが私のプログラムを実行するたびに変化し続けるだから、なぜPyClusterのKメドイドの繰り返しアプリケーションの結果の変更

2: 10 items 

25:10 items 

26:5 items 

(これは出力の1の統計値であると仮定)、私は疑問に思います。

答えて

0

K-medoidsはランダム化されたアルゴリズムなので、毎回異なる結果が得られます。

クラスター番号はおそらくメドイドのインデックスです。あなたはpyclusterのソースコードを見ましたか?

関連する問題