def f3(x, y, z, a):
    return x + 2 * y, a + 2 * z
df3 = pd.DataFrame()
df3['val1'], df3['val2'] = f3(df1.a, df1.b, df1.c, df1.d)
Python Pandas: returning more then one field value when applying function to a data frame row