पायथन में लेबल एन्कोडिंग कैसे करें (उदाहरण के साथ)


अक्सर मशीन लर्निंग में हम श्रेणीबद्ध चर को कुछ प्रकार के संख्यात्मक प्रारूप में परिवर्तित करना चाहते हैं जिन्हें एल्गोरिदम द्वारा आसानी से उपयोग किया जा सकता है।

ऐसा करने का एक तरीका लेबल एन्कोडिंग का उपयोग करना है, जो प्रत्येक श्रेणीगत मान को वर्णमाला क्रम के आधार पर एक पूर्णांक मान निर्दिष्ट करता है।

उदाहरण के लिए, निम्नलिखित स्क्रीनशॉट दिखाता है कि टीम नामक श्रेणीबद्ध चर के प्रत्येक अद्वितीय मान को वर्णमाला क्रम के आधार पर पूर्णांक मान में कैसे परिवर्तित किया जाए:

आप पायथन में लेबल एन्कोडिंग करने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

 from sklearn. preprocessing import LabelEncoder

#create instance of label encoder
lab = LabelEncoder()

#perform label encoding on 'team' column
df[' my_column '] = lab. fit_transform (df[' my_column '])

निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस वाक्यविन्यास का उपयोग कैसे करें।

उदाहरण: पायथन में एन्कोडिंग लेबल

मान लीजिए हमारे पास निम्नलिखित पांडा डेटाफ़्रेम हैं:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'],
                   ' points ': [25, 12, 15, 14, 19, 23, 25, 29]})

#view DataFrame
print (df)

  team points
0 to 25
1 to 12
2 B 15
3 B 14
4 B 19
5 B 23
6 C 25
7 C 29

हम टीम कॉलम में प्रत्येक श्रेणीबद्ध मान को पूर्णांक मान में बदलने के लिए लेबल एन्कोडिंग करने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं:

 from sklearn. preprocessing import LabelEncoder

#create instance of label encoder
lab = LabelEncoder()

#perform label encoding on 'team' column
df[' team '] = lab. fit_transform (df[' team '])

#view updated DataFrame
print (df)

   team points
0 0 25
1 0 12
2 1 15
3 1 14
4 1 19
5 1 23
6 2 25
7 2 29

परिणाम से हम देख सकते हैं:

  • प्रत्येक “ए” मान को 0 में बदल दिया गया है।
  • प्रत्येक “बी” मान को 1 में बदल दिया गया है।
  • प्रत्येक “सी” मान को 2 में परिवर्तित किया गया था।

ध्यान दें कि आप टीम कॉलम के मूल मान प्राप्त करने के लिए invers_transform() फ़ंक्शन का भी उपयोग कर सकते हैं:

 #display original team labels
lab. inverse_transform (df[' team '])

array(['A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'], dtype=object)

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि पायथन में अन्य सामान्य कार्य कैसे करें:

पंडों में श्रेणीबद्ध चर को संख्यात्मक में कैसे परिवर्तित करें
पांडा में बूलियन मानों को पूर्णांक मानों में कैसे परिवर्तित करें
पंडों में स्ट्रिंग्स को संख्याओं के रूप में एन्कोड करने के लिए फ़ैक्टराइज़() का उपयोग कैसे करें

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *