OPSTIC クラスタリング アルゴリズム

sklearn.cluster から import OPTICS,cluster_optics_dbscan
sklearn.datasets から import make_blobs
import numpy as np
import matplotlib.pyplot as plt
x,y = make_blobs(n_samples=500,n_features=4)
clust = OPTICS(min_samples=50,max_eps=np. inf,cluster_method='dbscan',eps=4.5,xi=.05,min_cluster_size=0.05)
np_data = np.array(x)
data = clust.fit(np_data)
print(x)
# print(clust.ordering_)
到達可能性 = data.reachability_[clust.ordering_]
print(reachability)
plt.subplot(2,2,1)
plt.plot(list(range(1,501)),reachability,marker='.',markedgewidth=3,linestyle='- ')
print(data.labels_)
plt.subplot(2,2,2)
plt.scatter(np_data[:,0],np_data[:,1],c=data.labels_+1.5,linewidths=np.power(clust.labels_+1.5,2))
plt.show()

おすすめ

転載: blog.csdn.net/weixin_51395932/article/details/129925740