पर एकाधिक तर्क कैसे पारित करें मेरे पास गिनती नामक एक विधि है जिसमें 2 तर्क होते हैं। मुझे आवेदन() विधि का उपयोग करके इस विधि को कॉल करने की आवश्यकता है। लेकिन जब मैं लागू विधि के लिए दो पैरामीटर गुजर रहा यह निम्न त्रुटि दे रहा है:लागू फ़ंक्शन
TypeError: counting() takes exactly 2 arguments (1 given)
मैं निम्नलिखित धागा python pandas: apply a function with arguments to a series. Update देखा है और मैं functool.partial उपयोग करने के लिए के रूप में मैं आयात करने के लिए नहीं करना चाहते हैं नहीं करना चाहती पैरामीटर पारित करने में सक्षम होने के लिए अतिरिक्त कक्षाएं।
def counting(dic, strWord):
if strWord in dic:
return dic[strWord]
else:
return 0
DF['new_column'] = DF['dic_column'].apply(counting, 'word')
अगर मैं एक एकल पैरामीटर देते हैं, यह काम करता है:
DF['new_column'] = DF['dic_column'].apply(lambda dic: counting(dic, 'word'))
दूसरी ओर, वहाँ बिल्कुल partial
उपयोग करने के साथ कुछ भी गलत नहीं:
def awesome_count(dic):
if strWord in dic:
return dic[strWord]
else:
return 0
DF['new_column'] = DF['dic_column'].apply(counting)
'dic' क्या है और आप कहां से आने की उम्मीद करते हैं? इसके अलावा, 'आंशिक' के साथ आपकी समस्या क्या है? यह मानक पुस्तकालय का हिस्सा है ... – tzaman
आप कहां से दूसरे तर्क से आना चाहते थे? –
अधिक स्पष्टता के लिए प्रश्न संशोधित किया गया। डिक कॉलम मान है जो डिफ़ॉल्ट रूप से लागू फ़ंक्शन के माध्यम से आ जाएगा। दूसरा तर्क एक नया तर्क है जिसे तर्क का उपयोग करके पारित किया जा रहा है। – Bonson