亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

確定點數最多的聚類中心

確定點數最多的聚類中心

HUH函數 2022-06-07 18:04:21
在使用 KMeans 對具有 GPS 位置的數據集執行聚類后,有沒有辦法確定具有最多點的聚類,即最大的聚類,然后將其中一個中心與該特定聚類相關聯?假設我的代碼是:kmeans = KMeans(n_clusters=4) kmeans.fit(points)我知道我可以通過以下方式打印中心:print(kmeans.cluster_centers_) -> e.g [[lat1, long1], [lat2, long2], ...]并通過以下方式確定每個集群的點數:print(Counter(kmeans.labels_)) -> e.g. Counter({0: 510, 1: 200, 2: 50, 3: 44})我現在如何將最大的集群(具有 510 個點的集群)鏈接到正確的中心坐標?這在 Python 中可能嗎?
查看完整描述

2 回答

?
Qyouu

TA貢獻1786條經驗 獲得超11個贊

您可以在計數器值上使用 argmax 獲得最大的集群標簽,并鏈接到僅索引的中心。


import numpy as np

from sklearn.cluster import KMeans

from collections import Counter


points = np.random.normal(0, 3, size=(100, 2))


kmeans = KMeans(n_clusters=4)

kmeans.fit(points)


counter = Counter(kmeans.labels_)

largest_cluster_idx = np.argmax(counter.values())

largest_cluster_center = kmeans.cluster_centers_[largest_cluster_idx ]


查看完整回答
反對 回復 2022-06-07
?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

標簽中的索引 0 對應中心 0,索引 1 對應中心 1。

其他一切都是瘋狂的,不是嗎?

即使您會自動按大小對它們進行排序(這會破壞一些東西),您也會更新標簽,因為用戶需要能夠為每個點找到正確的中心。

此外,它們按大小重新排序的理論很容易反駁:只需在不同的日子再運行幾次,你就會發現反例。特別是,如果您reversed(cluster_centers_)用作初始化,那么它應該在一次迭代內完成并以相反的順序給出它們。


查看完整回答
反對 回復 2022-06-07
  • 2 回答
  • 0 關注
  • 119 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號