Как распечатать результаты вывода в HDBSCAN
У меня есть данные ASCII, и мне нужно кластеризовать данные с помощью HDBSCAN. Я получил этикетки, но я не знаю, как напечатать результаты кластера вывода, то есть уникальные и отдельные результаты из hdbscan.
фрагмент кода:
import hdbscan
import numpy as np
datafile = "ascii.txt"
data = np.loadtxt(datafile, dtype = np.uint8)
clusterer = hdbscan.HDBSCAN(min_cluster_size = 20)
clusterer.fit(data)
print (np.unique(clusterer.labels_, return_counts = True))
1 ответ
Вы можете использовать Pandas, чтобы прочитать файл, а затем распечатать метки кластера вместе с набором данных, который вы используете в качестве входных данных. Попробуйте что-то вроде:
import pandas as pd
df = pd.read_csv("ascii.txt")
clusterer = hdbscan.HDBSCAN().fit_predict(df.ColumnName)
df_pd = pd.DataFrame({'Datapoints:' df.ColumnName, 'Cluster Labels:' clusterer)
Импорт hdbscan
импортировать NumPy как NP
datafile = "ascii.txt"
data = np.loadtxt (файл данных, dtype = np.uint8)
Modified_data = pd.DataFrame (данные)
clusterterer = hdbscan.HDBSCAN (min_cluster_size = 20)
clusterer.fit (Modified_data)
Modified_data [ 'Кластеры']=clusterer.labels_
Теперь Modified_data возвращает кадр данных pandas, где у вас есть столбец с именем "Clusters", и кластер, соответствующий каждому экземпляру, будет указан в столбце Clusters. Вы можете манипулировать этим фреймом данных согласно вашему требованию