gpt4 book ai didi

python - 如何通过 .apply() 在 Lambda 函数上使用 2 个参数

转载 作者:行者123 更新时间:2023-12-01 09:06:45 24 4
gpt4 key购买 nike

是否可以使此代码更快?

    for i in range (len (data)):
column_name = data['Name'].values[i]
if data['Market'].values[i] == 'P':
market = 'Local'
else:
market = 'Oversea'
data['Momentum'].values[i] = self.Factor_Model (column_name, market)

我不习惯 .apply() 和 lambda 函数。您能指导我如何将上面的代码更改为如下所示吗?

data['Momentum'] = data.apply(lambda row: self.Factor_Model(row['Name'],lambda row: if row['Market'].values == 'P' ))

提前感谢您的指导。

最佳答案

我会使用 axis=1 调用 .apply() 来对行进行操作。然后将系列中的每个项目直接传递给函数。

data['Location'] = np.where(data['Market'] == 'P', 'Local', 'Oversea')

data['Momentum'] = data.apply(lambda x: Factor_Model(x['Name'], x['Location']), axis=1)

关于python - 如何通过 .apply() 在 Lambda 函数上使用 2 个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51978316/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com