我有蟒蛇星火这个用户定义函数:如何将if-then表达式添加到用户定义的函数中?
result = udf(lambda num1, num2: (num1 - num2)/math.sqrt(1-(num1/num2)), FloatType())
我想添加一个检查num1/num2
大于1。如果是低于1,则num1
应等于num2
。
if (num1/num2 > 1):
num1 = num2
如何将此简单检查添加到udf
表达式中?
我想这一点,但它似乎失败:
def calculate(num1, num2):
if (num1/num2 > 1):
num1 = num2
result = (num1 - num2)/math.sqrt(1-(num1/num2))
return result
calc_z = udf(lambda num1, num2: calculate, FloatType())
udf(calculate,FloatType())'',不需要在'lambda'中错误地包装它。 – deceze