如何创建将应用于条件的函数

时间:2019-05-28 15:42:17

标签: python pandas

这里总共有菜鸟,所以我们将不胜感激。 我需要创建一个函数,该函数将基于同一数据框上不同系列(国家/地区)上的条件值,将其应用于数据框上的熊猫系列(邮政编码)

我创建的函数

## function for retrieving only numeric characters
num_pattern = '(\d+)'

def numeric(x,y):
    try :
        a = re.search(x,y).group()
    except:
        a = None
    return a

df['zip'] = df['zip'].apply(lambda x: numeric(num_pattern,x)) 

仅在df['country']列中的值等于'US'时才需要传递此函数

1 个答案:

答案 0 :(得分:0)

您可以将其应用于df行:

df['zip'] = df.apply(lambda x: numeric(num_pattern,x['zip']) if x['country']=='US' else x['zip'], axis=1)