पांडा ट्रांसफॉर्म का उपयोग करके ग्रुपबाय डेटाफ़्रेम में कॉलम जोड़ें
पांडा में ग्रुपबाय ऑपरेशंस के साथ काम करते समय, अक्सर एक नया कॉलम जोड़ना उपयोगी होता है परिणामी डेटाफ़्रेम. इसे पूरा करने का एक तरीका .map() फ़ंक्शन का उपयोग करना है, जैसा कि उदाहरण में दिखाया गया है। हालाँकि, एक वैकल्पिक और अधिक सरल दृष्टिकोण .transform() फ़ंक्शन को नियोजित करना है।
.transform() हमें डेटाफ़्रेम में प्रत्येक समूह के लिए एक फ़ंक्शन लागू करने और परिणामों के साथ एक श्रृंखला वापस करने की अनुमति देता है। लौटाई गई श्रृंखला में मूल डेटाफ़्रेम के साथ संरेखित एक सूचकांक होगा। , 1, 2, 2, 2, 2], 'प्रकार': ['एम', 'एन', 'ओ', 'एम', 'एम', 'एन', 'एन']})
हमारा लक्ष्य प्रत्येक c के लिए प्रकार के मानों की गणना करना और c के आकार के साथ एक कॉलम जोड़ना है।
df = pd.DataFrame({'c': [1, 1, 1, 2, 2, 2, 2], 'type': ['m', 'n', 'o', 'm', 'm', 'n', 'n']})
यह कोड प्रत्येक समूह के लिए मानों की गणना करता है और t नामक एक नया कॉलम बनाता है।
g = df.groupby('c')['type'].value_counts().reset_index(name='t')
g['size'] = df.groupby('c')['type'].transform('size')
.transform('size') प्रत्येक समूह पर आकार फ़ंक्शन लागू करता है, जो प्रत्येक समूह का आकार लौटाता है। परिणामी श्रृंखला को मूल डेटाफ़्रेम के सूचकांक के साथ संरेखित किया गया है, जिससे हम इसे g में एक नए कॉलम के रूप में जोड़ सकते हैं।
g['size'] = df.groupby('c')['type'].transform('size')
सी टाइप टी आकार 0 1 मी 1 3 1 1 एन 1 3 2 1 ओ 1 3 3 2 मी 2 4 4 2 n 2 4
.transform() का उपयोग करने से समूह द्वारा एकत्रीकरण से मूल डेटाफ़्रेम में एक कॉलम वापस जोड़ने का अधिक संक्षिप्त और सीधा तरीका मिलता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3