Ich habe eine Methode namens Zählen, die 2 Argumente dauert. Ich muss diese Methode mit der Methode apply() aufrufen. Allerdings, wenn ich vorbei an den zwei Parameter an die Anwendung Methode ist es die folgenden Fehler geben:Wie übergeben mehrere Argumente an die Funktion anwenden
TypeError: counting() takes exactly 2 arguments (1 given)
ich folgenden Thread gesehen habe python pandas: apply a function with arguments to a series. Update und ich will nicht verwenden functool.partial wie ich will nicht importieren zusätzliche Klassen, um Parameter übergeben zu können.
def counting(dic, strWord):
if strWord in dic:
return dic[strWord]
else:
return 0
DF['new_column'] = DF['dic_column'].apply(counting, 'word')
Wenn ich einen einzelnen Parameter geben, es funktioniert:
def awesome_count(dic):
if strWord in dic:
return dic[strWord]
else:
return 0
DF['new_column'] = DF['dic_column'].apply(counting)
Was ist 'dic' und woher soll es kommen? Was ist dein Problem mit "partially"? Es ist Teil der Standardbibliothek ... – tzaman
Woher soll das zweite Argument kommen? –
Modifizierte die Frage für mehr Klarheit. dic ist der Spaltenwert, der standardmäßig über die Funktion apply ausgegeben wird. Das zweite Argument ist ein neues Argument, das mit Logik übergeben wird. – Bonson