我正在尝试以下代码。但是我返回了错误
(““ Newmethod()缺少1个必需的位置参数:'B'”,“出现在索引0”)
def Newmethod(A,B):
Add=A+B
return Add
Df=pd.DataFrame([[1,2,3],[4,5,6],[7,8,9]],columns=["A","B","C"])
Df['D']=Df[['A','B']].apply(Newmethod, axis=1)
我在这里想念什么?请帮我。
答案 0 :(得分:2)
更改
Df['D']=Df[['A','B']].apply(lambda x:Newmethod(x.A,x.B), axis=1)
A B C D
0 1 2 3 3
1 4 5 6 9
2 7 8 9 15
说明
您可以使用np.sum
或更改Newmethod()
。否则,您只能在表单中执行此操作。
import numpy as np
Df['D']=Df[['A','B']].apply(np.sum, axis=1)
# or
def Newmethod(x):
Add= x.A + x.B
return Add
Df['D']=Df[['A','B']].apply(Newmethod, axis=1)