使用Lambda函数Pandas设置列值

时间:2017-06-26 04:03:53

标签: python pandas dataframe lambda

有没有人可以建议一种方法来回答同一个问题(参见链接),但是使用lambda函数: Update a dataframe in pandas while iterating row by row

1 个答案:

答案 0 :(得分:6)

您希望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)