आर

2013-02-11 42 views
14

में काम कर रहे टीएफ-आईडीएफ वेटिंग प्राप्त करने का प्रयास कर रहा हूं, मैं टीएम पैकेज के साथ कुछ बहुत ही बुनियादी पाठ विश्लेषण करने की कोशिश कर रहा हूं और कुछ टीएफ-आईडीएफ स्कोर प्राप्त कर रहा हूं; मैं ओएस एक्स चला रहा हूं (हालांकि मैंने उसी परिणाम के साथ डेबियन निचोड़ पर यह कोशिश की है); मेरे पास एक निर्देशिका है (जो मेरी कामकाजी निर्देशिका है) इसमें कुछ टेक्स्ट फाइलें हैं (पहले यूलीसिस के पहले तीन एपिसोड हैं, दूसरा दूसरा तीन एपिसोड है, यदि आपको पता होना चाहिए)।आर

आर संस्करण: 2.15.1 SessionInfo() इस टीएम के बारे में रिपोर्ट: [1] tm_0.5-8.3

कोड के प्रासंगिक बिट:

library('tm') 
corpus <- Corpus(DirSource('.')) 
dtm <- DocumentTermMatrix(corpus,control=list(weight=weightTfIdf)) 

str(dtm) 
List of 6 
$ i  : int [1:12456] 1 1 1 1 1 1 1 1 1 1 ... 
$ j  : int [1:12456] 2 10 12 17 20 24 29 30 32 34 ... 
$ v  : num [1:12456] 1 1 1 1 1 1 1 1 1 1 ... 
$ nrow : int 2 
$ ncol : int 10646 
$ dimnames:List of 2 
    ..$ Docs : chr [1:2] "bloom.txt" "telemachiad.txt" 
    ..$ Terms: chr [1:10646] "_--c'est" "_--et" "_--for" "_--goodbye," ... 
- attr(*, "class")= chr [1:2] "DocumentTermMatrix" "simple_triplet_matrix" 
- attr(*, "Weighting")= chr [1:2] "term frequency" "tf" 

आप देखेंगे कि भार ऐसा लगता है कि भारित टीएफ-आईडीएफ स्कोर के बजाय अभी भी डिफ़ॉल्ट टर्म फ्रीक्वेंसी (टीएफ) है।

क्षमा करें अगर मुझे कुछ याद आ रही है, लेकिन मैंने जो दस्तावेज पढ़ा है, उसके आधार पर यह काम करना चाहिए। गलती, कोई संदेह नहीं, सितारों में नहीं होते रहते हैं ...

उत्तर

21

आप DocumentTermMatrix मदद पृष्ठ को देखें, तो उदाहरण पर एक, तो आप उस control तर्क इस तरह से निर्दिष्ट किया जाता है देखेंगे:

data(crude) 
dtm <- DocumentTermMatrix(crude, 
      control = list(weighting = function(x) weightTfIdf(x, normalize = FALSE), 
          stopwords = TRUE)) 

तो, वजन weighting नामक सूची तत्व के साथ निर्दिष्ट किया गया है, weight नहीं। और उदाहरण के रूप में, आप फ़ंक्शन नाम या कस्टम फ़ंक्शन को पास करके इस भार को निर्दिष्ट कर सकते हैं। लेकिन निम्नलिखित कार्य भी करते हैं:

data(crude) 
dtm <- DocumentTermMatrix(crude, control = list(weighting = weightTfIdf)) 
+1

युप। उसने ऐसा किया * भार * नहीं * वजन *। मैं खुद को लात मार सकता था। बहुत बहुत धन्यवाद! – cforster

+0

कृपया ध्यान दें कि डिफ़ॉल्ट रूप से वज़न इसे सामान्यीकृत करते हैं। – zipp