from sklearn.cluster import DBSCAN
from sklearn.preprocessing import StandardScaler
from sklearn import metrics
X_scaled = StandardScaler().fit_transform(X)
dbscn = DBSCAN(eps = 4, min_samples = 5).fit(X_scaled)
labels = dbscn.labels_
print(labels)
n_clusters_ = len(set(labels)) - (1 if -1 in labels else 0)
n_clusters_
print('Estimated number of clusters: %d' % n_clusters_)
print("Homogeneity: %0.3f" % metrics.homogeneity_score(y, labels))
print("Completeness: %0.3f" % metrics.completeness_score(y, labels))
print("Silhouette Coefficient: %0.3f"
% metrics.silhouette_score(X_scaled, labels))