टेक्स्ट एनालिटिक्स के एक भाग के रूप में, हमें अक्सर शब्दों को गिनने और उन्हें विभिन्न एल्गोरिदम में प्रोसेसिंग के लिए वेटेज असाइन करने की आवश्यकता होती है, इसलिए इस लेख में हम देखेंगे कि हम किसी दिए गए वाक्य में प्रत्येक शब्द की आवृत्ति कैसे पा सकते हैं। जैसा कि नीचे दिखाया गया है, हम इसे तीन तरीकों से कर सकते हैं।
काउंटर का उपयोग करना
हम शब्दों की आवृत्ति प्राप्त करने के लिए संग्रह मॉड्यूल से काउंटर () का उपयोग कर सकते हैं। यहां हम लाइन से शब्दों को उत्पन्न करने के लिए पहले स्प्लिट () लागू करते हैं और फिर सबसे_कॉमन () लागू करते हैं।
उदाहरण
from collections import Counter line_text = "Learn and practice and learn to practice" freq = Counter(line_text.split()).most_common() print(freq)
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
[('and', 2), ('practice', 2), ('Learn', 1), ('learn', 1), ('to', 1)]
फ्रीकडिस्ट का उपयोग करना()
प्राकृतिक भाषा टूल किट फ़्रीकडिस्ट फ़ंक्शन प्रदान करता है जो स्ट्रिंग में शब्दों की संख्या के साथ-साथ अलग-अलग शब्दों की संख्या को दर्शाता है। मोस्ट_कॉमन () को लागू करने से हमें प्रत्येक शब्द की आवृत्ति मिलती है।
उदाहरण
from nltk import FreqDist text = "Learn and practice and learn to practice" words = text.split() fdist1 = FreqDist(words) print(fdist1) print(fdist1.most_common())
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
<FreqDist with 5 samples and 7 outcomes> [('and', 2), ('practice', 2), ('Learn', 1), ('learn', 1), ('to', 1)]
शब्दकोश का उपयोग करना
इस दृष्टिकोण में हम पंक्ति के शब्दों को एक शब्दकोश में संग्रहीत करते हैं। फिर हम प्रत्येक शब्द की आवृत्ति प्राप्त करने के लिए गिनती () लागू करते हैं। फिर शब्द आवृत्ति मानों के साथ शब्दों को ज़िप करें। अंतिम परिणाम एक शब्दकोश के रूप में दिखाया गया है।
उदाहरण
text = "Learn and practice and learn to practice" words = [] words = text.split() wfreq=[words.count(w) for w in words] print(dict(zip(words,wfreq)))
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं:
{'Learn': 1, 'and': 2, 'practice': 2, 'learn': 1, 'to': 1}