2013-08-14 8 views
15

में क्लस्टर अंक बचाने के उदाहरण Scikit लर्निंग Demo of DBSCAN clustering algorithm मैं एक सरणी में एक्स स्टोर करने के लिए कोशिश कर रहा हूँ, प्रत्येक क्लस्टरिंग वर्गDBSCAN अजगर की scikit सीखने: एक सरणी

import numpy as np 
from sklearn.cluster import DBSCAN 
from sklearn import metrics 
from sklearn.datasets.samples_generator import make_blobs 
from sklearn.preprocessing import StandardScaler 
from pylab import * 

# Generate sample data 
centers = [[1, 1], [-1, -1], [1, -1]] 
X, labels_true = make_blobs(n_samples=750, centers=centers, cluster_std=0.4, random_state=0) 
X = StandardScaler().fit_transform(X) 

xx, yy = zip(*X) 
scatter(xx,yy) 
show() 

enter image description here

के y निम्नलिखित
db = DBSCAN(eps=0.3, min_samples=10).fit(X) 
core_samples = db.core_sample_indices_ 
labels = db.labels_ 
n_clusters_ = len(set(labels)) - (1 if -1 in labels else 0) 
print n_clusters_ 
3 

enter image description here

मैं द्वारा scikit सीखने DBSCAN कार्यान्वयन समझने की कोशिश कर रही है, लेकिन इस बात मैं कर रहा हूँ से परेशानी है। क्लस्टर की संख्या 3 (n_clusters_) है और मैं प्रत्येक क्लस्टर के x, y को सरणी

उत्तर

33

पहले क्लस्टर, X[labels == 0] है आदि .:

clusters = [X[labels == i] for i in xrange(n_clusters_)] 

और बाहरी कारकों के

outliers = X[labels == -1] 
+0

हाँ यह वही है जो मैं –

+1

के लिए देख रहा था यह दस्तावेज़ों के लिए एक बड़ा जोड़ा होगा :) –

2

"प्रत्येक क्लस्टर के" से क्या मतलब है?

डीबीएससीएएन में, समूहों को के-साधनों के रूप में सेंट्रॉइड के रूप में प्रतिनिधित्व नहीं किया जाता है, इसलिए क्लस्टर का कोई स्पष्ट प्रतिनिधित्व नहीं है इसके सदस्यों को छोड़कर। आपके पास पहले से क्लस्टर सदस्यों की एक्स और वाई स्थिति है, क्योंकि वे इनपुट डेटा हैं।

तो मुझे यकीन नहीं है कि सवाल क्या है।

+0

हैं हे एंड्रियास, खेद अगर मैं स्पष्ट नहीं था। यदि आप आंकड़े 2 में देखते हैं तो प्रत्येक बिंदु (x, y) में क्लस्टर के कारण एक अलग रंग होता है (उदाहरण के लिए, उदाहरण में 3 क्लस्टर और बैक डॉट्स शोर होते हैं)। मैं 3 ब्लॉक के साथ एक सरणी रखना चाहता हूँ। प्रत्येक ब्लॉक उस क्ल्यूटर के एक्स, वाई अंक मान स्टोर करता है। –

+0

भी एक शब्दकोश अच्छी तरह से काम करता है, जहां कुंजी –

+1

है, आपके पास क्लस्टर सदस्यों की एक्स और वाई स्थिति है, लेकिन आप इन बिंदुओं के क्लस्टर में कैसे जान सकते हैं? – user3378649

संबंधित मुद्दे