使用 Lambda 函数 Pandas 设置列值

Posted

技术标签:

【中文标题】使用 Lambda 函数 Pandas 设置列值【英文标题】:Using Lambda Function Pandas to Set Column Values 【发布时间】:2017-11-28 21:29:05 【问题描述】:

任何人都可以建议一种方法来回答相同的问题(请参阅链接),但使用 lambda 函数: Update a dataframe in pandas while iterating row by row

【问题讨论】:

【参考方案1】:

您需要将apply 与参数axis=1 一起使用,以确保将传递给apply 的函数应用于每一行。

引用的问题有一个使用此循环的答案。

for i, row in df.iterrows():
    if <something>:
        row['ifor'] = x
    else:
        row['ifor'] = y

    df.ix[i]['ifor'] = x

使用具有相同逻辑的 lambda

df['ifor'] = df.apply(lambda row: x if something else y, axis=1)

【讨论】:

以上是关于使用 Lambda 函数 Pandas 设置列值的主要内容,如果未能解决你的问题,请参考以下文章

pandas根据两个条件设置列值[重复]

如果列值不为 NULL,则 Python pandas 应用函数

遍历 pandas 行并根据其他列中的值设置列值

支持 Nan 的 Pandas Lambda 函数

pandas中groupby,apply,lambda函数使用

Pandas:如果条件[重复],则从另一列更新列值