DataFrame का ऑर्डिनल एनकोडिंग
Categorical फीचर्स को दो तकनीकों से एनकोड किया जा सकता है: one-hot एनकोडिंग और ordinal एनकोडिंग. One-hot एनकोडिंग में, हर category एक कॉलम बन जाती है और प्रत्येक row के लिए संबंधित category वाले कॉलम का मान 1 होता है और बाकी 0. Ordinal एनकोडिंग में, categories को integer मानों से map किया जाता है जो 0 से categories की संख्या तक होते हैं.
इस अभ्यास में, आप users DataFrame की सभी कॉलम्स पर loop लगाकर categories को ordinal रूप से एनकोड करेंगे. आप हर कॉलम के लिए एक encoder को dictionary ordinal_enc_dict में भी सहेजेंगे ताकि एनकोड की गई कॉलम्स को वापस original categories में बदला जा सके.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Missing Data से निपटना
अभ्यास निर्देश
- एक खाली dictionary
ordinal_enc_dictपरिभाषित करें. - प्रत्येक कॉलम के लिए एक Ordinal Encoder ऑब्जेक्ट बनाएँ.
- users में कॉलम के non-null मान चुनें और उन्हें encode करें.
- users में प्रत्येक कॉलम (
col_name) के non-null मानों पर encoded मान वापस असाइन करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Create an empty dictionary ordinal_enc_dict
ordinal_enc_dict = ___
for col_name in users:
# Create Ordinal encoder for col
ordinal_enc_dict[col_name] = ___
col = users[col_name]
# Select non-null values of col
col_not_null = ___
reshaped_vals = col_not_null.values.reshape(-1, 1)
encoded_vals = ordinal_enc_dict[col_name].fit_transform(reshaped_vals)
# Select the non-null values for the column col_name in users and store the encoded values
users.loc[___, ___] = np.squeeze(encoded_vals)