gpt4 book ai didi

python - Pandas - 使用 .apply() 根据条件更新行中的值

转载 作者:太空宇宙 更新时间:2023-11-04 09:24:20 26 4
gpt4 key购买 nike

简化,我想使用一个函数来检查一行的条件并相应地设置值:

def helper(row):
if row["A"] == "TEST":
row["B"] = "WOW"
else:
row["C"] = "NO_GO"


moddf = df.apply(helper, axis=1)

我可以使用 iterrows() 执行此操作,但 .apply 应该更快地迭代 df 中超过 100 万行。

最佳答案

您不需要(也不应该使用)申请:

# toy data
df = pd.DataFrame({'A':['TEST','NO'],
'B' : ['A','B'],
'C' :list('12')})

s = df['A']=='TEST'

df.loc[s,'B'] = 'WOW'
df.loc[~s, 'C'] = 'NO_GO'

输出:

      A    B      C
0 TEST WOW 1
1 NO B NO_GO

关于python - Pandas - 使用 .apply() 根据条件更新行中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58529549/

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