Как рассчитать среднее значение каждого кластера после кластеризации

#python #cluster-analysis

Вопрос:

Здесь я сгруппировал данные и получил массив о метке:

 player_playoffs_career_data_label = AgglomerativeClustering(n_clusters=50).fit_predict(player_playoffs_career_data)
print(player_playoffs_career_data_label)
 
 [24 31  7 ... 30 30 30]
 

И затем, как я могу вычислить среднее значение каждого кластера (возможно, просто вычислить среднее значение центральной точки каждого кластера). Я имею в виду, как выбрать центральную точку каждого кластера и рассчитать его среднее значение.

После этого, как я могу получить число о номерах строк точек, которые появляются в кластере с наибольшим средним значением.

О необработанных данных(player_playoffs_career_data):

 [[  17  106   38 ...    4    2    0] 
 [ 237 8851 5762 ... 1419 1050    4] 
 [  15  415  195 ...   45   43   49] 
 ...
 [   3    9    2 ...    1    0    0] 
 [  15   67   26 ...    7    2    0] 
 [   1    1    0 ...    0    0    0]]
 

Спасибо вам за ваш ответ.

Комментарии:

1. можете ли вы объяснить, каков ваш ожидаемый результат ?

2. найдите кластер с наибольшим средним значением и верните элементы в этом кластере (распечатав индекс строки для этих элементов).

3. Или, может быть, кто может помочь мне создать новые наборы данных из этих кластеров. Измените эти кластеры на несколько определенных матриц. И тогда я смогу вычислить среднее значение матриц.

Ответ №1:

Предполагая , что вы используете K-means , вы должны выполнить следующие действия —

  1. Выберите K случайных точек (вы можете проверить метод локтя, чтобы найти хорошее значение K)
  2. После выбора этих K случайных точек вы можете рассчитать евклидово расстояние каждой точки данных от этих K центров кластера
  3. Назначьте точку данных кластеру, находящемуся на минимальном расстоянии от нее.
  4. Теперь вы можете четко определить свое K clusters , рассчитать среднее значение элементов внутри кластера, которое будет вашим new cluster center .
  5. Повторяйте эти действия до тех пор, пока принадлежность элементов кластера существенно не изменится.

Комментарии:

1. Ну, если я не могу использовать k-means , просто используйте AgglomerativeClustering . Как я могу рассчитать среднее значение этих кластеров. Что мне нужно, так это узнать, какой из них является лучшим кластером и кто входит в этот кластер.