假设我有两个系列:
我希望将一个两个参数的函数应用到这两个系列上,以得到一系列结果(作为一系列输出)。现在,实现该功能的一种方法如下:
s = pd.Series([20, 21, 12]
t = pd.Series([17,19 , 11]
我希望将一个两个参数的函数应用到这两个系列上,以得到一系列结果(作为一系列输出)。现在,实现该功能的一种方法如下:
df = pd.concat([s, t], axis=1)
result = df.apply(lambda x: foo(x[s], x[t]), axis=1)
但是这种方法似乎有些笨重。是否有更加优雅的方式呢?
lambda x: foo(x[s], x[t])
是正确的吗?难道你的意思不是对每个s
和t
值的每一行应用foo
函数吗?那么foo
函数是什么样子的呢? - Rodalmresult = df.apply(foo, axis=1)
,这样会使您的解决方案更加优雅。或者如果您想要result = pd.concat([s, t], axis=1).apply(foo, axis=1)
。 - Rodalm