कैटेगोरिकल कॉलम्स को एन्कोड करना III: DictVectorizer
ठीक है, पाइपलाइनों में जाने से पहले एक आख़िरी ट्रिक। जो दो-स्टेप प्रक्रिया आपने अभी देखी — LabelEncoder के बाद OneHotEncoder — उसे DictVectorizer का इस्तेमाल करके सरल बनाया जा सकता है।
किसी DataFrame को डिक्शनरी में बदलकर उस पर DictVectorizer लगाने से आपको लेबल एन्कोडिंग और वन-हॉट एन्कोडिंग दोनों एक साथ मिल जाती हैं।
इस अभ्यास में आपका काम इसी रणनीति को लागू करना है!
यह अभ्यास पाठ्यक्रम का हिस्सा है
XGBoost के साथ Extreme Gradient Boosting
अभ्यास निर्देश
sklearn.feature_extractionसेDictVectorizerइम्पोर्ट करें..to_dict()मेथड का इस्तेमाल करकेdfको"records"आर्ग्युमेंट के साथ डिक्शनरी में बदलें और उसेdf_dictनाम दें.sparse=Falseकीवर्ड आर्ग्युमेंट के साथdvनाम का एकDictVectorizerऑब्जेक्ट बनाएँ..fit_transform()मेथड का उपयोग करकेDictVectorizerकोdf_dictपर अप्लाई करें.- परिणामस्वरूप निकली पहली पाँच पंक्तियाँ और vocabulary प्रिंट करने के लिए 'Submit Answer' दबाएँ.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Import DictVectorizer
____
# Convert df into a dictionary: df_dict
df_dict = ____
# Create the DictVectorizer object: dv
dv = ____
# Apply dv on df: df_encoded
df_encoded = ____
# Print the resulting first five rows
print(df_encoded[:5,:])
# Print the vocabulary
print(dv.vocabulary_)