熊猫-将功能应用于多列

时间:2018-11-01 06:25:26

标签: python pandas

我的数据框中有两列。 一个叫做brand name,另一个叫total amount enter image description here

我定义了一个函数来确定:

if the brand name == 'something' and total amount > 'some number'
then return 'something'

我想将该函数应用于数据框-df[["Brand Name","Total amount"]],它返回错误。

请告知如何解决此问题?谢谢。

2 个答案:

答案 0 :(得分:3)

您实际上不需要功能。 pandas为您提供了filter数据集的选项:

df[(df[brand name] == 'something') & (df[total amount] > 'some number')]

答案 1 :(得分:2)

您的函数应如下所示:

def func_name(x):
    if x['Brand Name'] == 'something' and x['total amount'] > y:
        return 'some'

使用:

df.apply(func_name, axis = 1)