【发布时间】:2020-11-01 08:26:26
【问题描述】:
假设我有一个名人数据框,包括他们的年龄、种族、身高、行业等。
我想创建一个函数,我可以在其中系统地过滤数据框,以便可以应用多个过滤器。
例如
def filter_data(df, filter_col, filter_val, filter_amount):
if filter_amount == 1:
df = df[df.filter_col[0] == filter_val[0]]
if filter_amount == 2:
df = df[(df.filter_col[0] == filter_val[0]) & (df.filter_col[1] == filter_val[1])]
etc
其中 filter_col 是您希望作为过滤依据的列的列表,filter_val 也是一个值列表,而 filter_amount 是一个整数
我希望它是系统性的,以便对于任何过滤器数量,它都可以根据列表的值继续过滤数据集,而无需手动对其进行编码
帮助。
【问题讨论】:
标签: python pandas numpy dataframe pandas-groupby