Iは、それぞれIDが変数ATTR1、ATTR2とattr3で観察され、このようなパンダのデータフレーム、を有する:どのように類似性マトリックスとインデックスを含むクラスタ?
ID attr1 attr2 attr3
20 2 1 2
10 1 3 1
5 2 2 4
7 1 2 1
16 1 2 3
28 1 1 3
35 1 1 1
40 1 2 3
46 1 2 3
21 3 1 3
をとの和に基づいて、私はIDが比較される場合に使用する類似度行列を作っペアごとの属性の違い。
[[ 0. 4. 3. 3. 3. 2. 2. 3. 3. 2.]
[ 4. 0. 5. 1. 3. 4. 2. 3. 3. 6.]
[ 3. 5. 0. 4. 2. 3. 5. 2. 2. 3.]
[ 3. 1. 4. 0. 2. 3. 1. 2. 2. 5.]
[ 3. 3. 2. 2. 0. 1. 3. 0. 0. 3.]
[ 2. 4. 3. 3. 1. 0. 2. 1. 1. 2.]
[ 2. 2. 5. 1. 3. 2. 0. 3. 3. 4.]
[ 3. 3. 2. 2. 0. 1. 3. 0. 0. 3.]
[ 3. 3. 2. 2. 0. 1. 3. 0. 0. 3.]
[ 2. 6. 3. 5. 3. 2. 4. 3. 3. 0.]]
データをクラスタリングするためにsklearnのDBSCANを試しましたが、クラスタ自体にラベルが付けられているようですか?私は後で視覚化のデータ点のIDを見つける必要があります。ですから、私はIDの違いだけをクラスタリングしたいのですが、ID自体はクラスタ化しません。この種のデータに適した別のアルゴリズムがありますか、距離行列の値にラベルを付けてDBSCANや別のメソッドで使用できるようにする方法はありますか? ps.theデータセットには50以上の属性と10000個の観測値があります
各データポイントのラベルを取得しようとしていますか?もしそうなら、clusteringの後にlabels_パラメータを使うことができます。 – aberger
こんにちは、@abergerさんのお返事ありがとうございます。 db_DBSCAN(eps = 0.3、min_samples = 10).fit(X) core_samples_mask = np.zeros_like(db.labels_、db.labels_)は、デモのように、クラスタに与えられたラベルのみを取得します。 dtype = bool)core_samples_mask [db.core_sample_indices_] = True labels = db.labels_'各クラスタにどのようなポイントがあるかを知りたいのですが、マトリックスからインデックスを取得したかどうかしかわかりません。 – Lytics