У меня есть датафрейм с двумя классами «да» и «нет». используя скучную иерархию я нашел 2 кластера. вот мой код
from scipy.cluster.hierarchy import linkage, dendrogram
from scipy.spatial.distance import pdist
from scipy.cluster.hierarchy import fcluster
Mdist_matrix = pdist(x_Minmax, metric= 'cityblock')
MSlink = linkage (Mdist_matrix , method = 'single' , metric = 'cityblock')
crsm = fcluster(MClink, k , criterion='maxclust')
arr = np.unique(crsm, return_counts = True)
# print(arr)
dfcluster= dfcluster.copy()
dfcluster['Clabels'] = pd.Series(crsm, index=dfcluster.index)
No = dfcluster[df['status'] == 0]['Clabels'].value_counts()
print("CNO\n",No)
Yes= dfcluster[df['status'] == 1]['Clabels'].value_counts()
print("Cyes\n",Yes)
Вывод выглядит так
Я хотел вычислить энтропию каждого кластера и чистоту кластера. Как я могу вычислить вероятность «да» и «нет» в каждом из кластеров?
Я пытался сделать это таким образом Самый быстрый способ вычисления энтропии в питоне , но мне это не понятно.