我有一个DataFrame我正在执行selectExpr的
selectExpr("src.ID", "dst.ID", "SQRT(POW((src.X - dst.X),2) + POW((src.Y - dst.Y),2)) as dist") \
有什么办法可以dist在 Python 函数中的列上执行路径?
我有一个DataFrame我正在执行selectExpr的
selectExpr("src.ID", "dst.ID", "SQRT(POW((src.X - dst.X),2) + POW((src.Y - dst.Y),2)) as dist") \
有什么办法可以dist在 Python 函数中的列上执行路径?
我来自 scala,但在 python 中显然有类似的方式。包中的udf功能sql.fucnctions允许开发人员创建自己的UserDefinedFunction并在 sparkDataframe操作和SQL查询中使用它们。这是可以执行您要求的代码
val constumeFunction = udf((x: Double, y: Double, z: Double, t: Double) => pow(x - y, 2) + pow(z - t, 2))
然后你可以UserDefinedFunction在这样的select方法中调用它:
selectExpr($"src.ID", $"dst.ID",costumeFunction(src.X, dst.X, src.Y, dst.Y) as dist")
很抱歉用 Scala 代码回答,但我确信在 python 中有一种非常相似的方式