将数据帧传递到应用函数熊猫作为参数



是否可以将数据帧传递给这样的apply函数?

df2 = df1.apply(func,axis=1,args=df2)
def func(df1,df2):
# do stuff in df2 for each row of df1
return df2

两个数据帧的长度不同。

来自df.apply文档:

DataFrame.apply(func, axis=0, broadcast=False, raw=False, reduce=None, args=(), **kwds)

沿输入轴应用函数 数据帧。

argstuple

除了要传递给函数的位置参数 阵列/系列。

正确的方法是在元组中传递您的参数,如下所示:

df1.apply(func, axis=1, args=(df2, ))

如果知道您要实现的目标,则可以进一步改进您的代码。

最新更新