पांडा द्वारा एकाधिक कॉलम के साथ फ़ंक्शन 'लागू करने' की समस्या का निवारण
जब 'लागू करें' का उपयोग करके पांडा डेटाफ़्रेम में एकाधिक कॉलम में किसी फ़ंक्शन को लागू करने का प्रयास किया जाता है 'फ़ंक्शन, यदि कॉलम नाम स्ट्रिंग्स में संलग्न नहीं हैं या यदि फ़ंक्शन में कोई सिंटैक्स त्रुटि होती है, तो उपयोगकर्ताओं को एक त्रुटि संदेश का सामना करना पड़ सकता है परिभाषा.
अपरिभाषित नामों की समस्या को हल करने के लिए, सुनिश्चित करें कि कॉलम नाम एकल उद्धरण या दोहरे उद्धरण चिह्नों के भीतर निर्दिष्ट हैं। उदाहरण के लिए, 'row[a]' का उपयोग करने के बजाय, 'row['a']' या 'row["a"]' का उपयोग करें।
इसके अतिरिक्त, यदि 'apply' के भीतर उपयोग किए गए फ़ंक्शन में जटिल शामिल है संचालन या एकाधिक लूप, किसी भी वाक्यविन्यास त्रुटियों या लापता कथनों की जांच करना महत्वपूर्ण है। ये त्रुटियाँ फ़ंक्शन के निष्पादन को प्रभावित कर सकती हैं और गलत परिणाम या त्रुटि संदेश दे सकती हैं।
निम्न उदाहरण पर विचार करें:
df = DataFrame({'a': np.random.randn(6),
'b': ['foo', 'bar'] * 3,
'c': np.random.randn(6)})
def my_test(row):
cum_diff = 0
for ix in df.index():
cum_diff = cum_diff (row['a'] - df['a'][ix])
return cum_diff
इस उदाहरण में, त्रुटि संदेश 'इंडेक्सएरर: इंडेक्स आउट ऑफ रेंज' लूप के दौरान अस्तित्वहीन सूचकांकों तक पहुंचने का प्रयास करने से उत्पन्न होता है। इसे ठीक करने के लिए, सुनिश्चित करें कि सूचकांक डेटाफ़्रेम की सीमा के भीतर हैं या एक अलग पुनरावृत्ति विधि का उपयोग करें, जैसे:
def my_test(row):
cum_diff = 0
for index, value in df.iterrows():
cum_diff = (row['a'] - value['a'])
return cum_diff
फ़ंक्शन की सावधानीपूर्वक जांच करके और स्ट्रिंग्स में कॉलम नामों को संलग्न करके, आप समस्याओं को प्रभावी ढंग से हल कर सकते हैं और कई कॉलमों के साथ 'लागू करें' फ़ंक्शन का उपयोग कर सकते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3