我正在尝试对一个包含超过100万个数据点的数据集进行聚类。其中一列是文本,另一列是与之对应的数值。我面临的问题是程序会卡住并永远无法完成。我尝试使用大约10万个数据点的较小数据集,可以快速运行,但随着数据点数量的增加,它开始变慢,对于100万个数据点,它永远无法完成。最初,我认为可能是因为我的tfidf文本矩阵有100个维度,所以需要很长时间。然后我尝试基于每个数据点的单个数值进行聚类,但仍未能完成。以下是代码片段。您是否知道我可能做错了什么?我看到其他人处理更大的数据集,并没有出现问题。
Y=data['amount'].values
Y=Y.reshape(-1,1)
dbscan = DBSCAN(eps=0.3, min_samples= 10, algorithm='kd_tree')
dbscan.fit_predict(Y)
labels = dbscan.labels_
print(labels.size)
clusters = labels.tolist()
#printing the value and its label
for a, b in zip(labels, Y):
print(a, b)