首页 > 解决方案 > 当函数需要数据框行python时使用apply()

问题描述

我的函数正在返回一个基于数据框行的值

def function(df, row):
    if df['A'][row]!='value':
        return np.nan
    else:
        return df['B'][row]

我需要使用 apply 来调用它。但是,我不知道如何将行传递给函数。我知道有更有效的方法可以做到这一点,但说明很清楚(是的,这是一个课堂作业)

我尝试了 和 的多种变apply()lambda。没有任何工作。最新的尝试是这个,但它期待一个行参数。

df.apply(hourly_wage, axis=1)

有什么建议么?

标签: pythondataframeapply

解决方案


你试过了吗:df.apply(lambda row: function(row), axis=1)
但你必须改变你的功能:

def function(row):
    if row['A']!='value':
        return np.nan
    else:
        return row['B']

推荐阅读