[英]Python: How to pass Dataframe Columns as parameters to a function?
[英]How to pass two columns of a dataframe to a function in python?
我正在尝试下面的代码。 但是我返回了错误
(“ 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)
我在这里想念什么? 请帮我。
更改
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)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.