访问Pandas Dataframe应用功能中的列表,而不使列表全局

时间:2017-03-18 18:58:51

标签: python pandas dataframe apply

我有一个Pandas数据帧。对于此框架中的每一行,我想进行一定的检查。如果检查产生True,那么我想将dataframe-row的某些列添加到列表结构中。

如何在apply函数中访问列表而无需创建全局列表变量?这可能吗?或者有更好的方法吗?

代码如下所示:

df.apply(checkFunction, axis=1)

checkFunction(row): 
    if (check == True):
        myList.append(row)
    return row

1 个答案:

答案 0 :(得分:1)

df.apply()允许您传递位置参数和关键字。

def checkFunction(row, lst): 
    if (check == True):
        lst.append(row)
    return row

my_list = []
df.apply(checkFunction, axis=1, args=(my_list,))

请勿将其list称为与保留的list关键字相冲突。

注意:传递给args的值必须是元组。我刚编辑了示例代码以显示此内容。