"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > `लागू करें()` के साथ पिछली पंक्ति मानों का उपयोग करके डेटाफ़्रेम में कॉलम की गणना कैसे करें?

`लागू करें()` के साथ पिछली पंक्ति मानों का उपयोग करके डेटाफ़्रेम में कॉलम की गणना कैसे करें?

2024-11-13 को प्रकाशित
ब्राउज़ करें:521

How to Calculate a Column in a DataFrame Using Previous Row Values with `apply()`?

लागू() का उपयोग करके पिछले मूल्य विचारों के साथ डेटाफ़्रेम के माध्यम से पुनरावृत्ति

पांडा में, लागू() फ़ंक्शन आमतौर पर डेटाफ़्रेम की प्रत्येक पंक्ति में एक फ़ंक्शन लागू करने के लिए नियोजित किया जाता है . हालाँकि, चुनौतियाँ तब उत्पन्न होती हैं जब पिछली पंक्ति के मान की गणना भी उसी लागू() विधि का उपयोग करके की जाती है।

निम्नलिखित पर विचार करें डेटाफ़्रेम:

Index_DateABCD
2015-01-311010NaN10
2015-02-0123NaN22
2015-02-0210 60NaN2 80
2015-02-0310100NaN250

द उद्देश्य कॉलम C प्राप्त करना है:

  • 2015-01-31 के लिए, इसे D के मान पर सेट करें।
  • बाद की पंक्तियों के लिए, C की पिछली पंक्ति के मान को इससे गुणा करें A की वर्तमान पंक्ति मान और इसे B की वर्तमान पंक्ति मान में जोड़ें।

समाधान:

प्राप्त करना यह, हमने सबसे पहले 2015-01-31 के लिए C का प्रारंभिक मान निर्धारित किया है:

df.loc[0, 'C'] = df.loc[0, 'D']

फिर, हम शेष पंक्तियों के माध्यम से पुनरावृति करते हैं और वांछित गणनाओं के साथ सी मानों को अपडेट करते हैं:

for i in range(1, len(df)):
    df.loc[i, 'C'] = df.loc[i-1, 'C'] * df.loc[i, 'A']   df.loc[i, 'B']

इनके बाद अंतिम डेटाफ़्रेम परिचालन:

Index_DateABCडी
2015-01-311010101 0
2015-02-01232322
2015-02-021060290280
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3