2012-02-12 22 views
9

मैं क्लस्टर सत्यापन करने के लिए आर में fpc पैकेज का उपयोग कर रहा हूं।आर क्लस्टरिंग 'शुद्धता' मीट्रिक

मैं बाहरी क्लस्टरिंग के साथ अपने क्लस्टरिंग की तुलना करने के लिए फ़ंक्शन क्लस्टर.स्टैट्स() का उपयोग कर सकता हूं और रैंड इंडेक्स, एंट्रॉपी e.t.c. जैसे कई मीट्रिक की गणना कर सकता हूं।

हालांकि, मैं एक मीट्रिक 'पवित्रता' या 'क्लस्टर सटीकता' कहा जाता है जो http://nlp.stanford.edu/IR-book/html/htmledition/evaluation-of-clustering-1.html

में परिभाषित किया गया है, अगर वहाँ आर

धन्यवाद में इस उपाय के एक कार्यान्वयन है मैं सोच रहा हूँ रहा हूँ, चेट

उत्तर

11

मैं एक ऑफ-द-शेल्फ समारोह के बारे में पता नहीं है, लेकिन यहां एक ही रास्ता है कि आप इसे अपने आप को अपने लिंक में समीकरण का उपयोग कर सकता है:

ClusterPurity <- function(clusters, classes) { 
    sum(apply(table(classes, clusters), 2, max))/length(clusters) 
} 

यहाँ हम कुछ यादृच्छिक कार्य, मैं कहाँ का मानना ​​है कि हम उम्मीद करते हैं पवित्रता 1/संख्या के- कक्षाएं होने की पर उसकी जांच कर सकते हैं:

> n = 1e6 
> classes = sample(3, n, replace=T) 
> clusters = sample(5, n, replace=T) 
> ClusterPurity(clusters, classes) 
[1] 0.334349 
+1

कि छोटा और आसान हो गया था! मैं काफी बार आर का उपयोग करता हूं और ऐसा करने के लिए एक लंबा काम लिखने के लिए भीख मांग रहा था। मुझे समय बचाने और मुझे एक और चीज आर – chet

+0

@chet ग्रेट में पढ़ाने के लिए बहुत बहुत धन्यवाद, मुझे खुशी है कि इससे मदद मिलती है। सौभाग्य! –

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