2017-05-17 2 views

Répondre

1

Je viens de scala mais il y a évidemment une manière similaire en python. la fonction udf du paquet sql.fucnctions permet aux développeurs de créer leur propre UserDefinedFunction et de les utiliser dans l'opération Dataframe et SQL. est le code ici qui peut effectuer ce que vous avez demandé

val constumeFunction = udf((x: Double, y: Double, z: Double, t: Double) => pow(x - y, 2) + pow(z - t, 2)) 

alors vous pouvez appeler cette UserDefinedFunction dans la méthode select comme ceci:

selectExpr($"src.ID", $"dst.ID",costumeFunction(src.X, dst.X, src.Y, dst.Y) as dist") 

désolé pour répondre avec le code Scala mais je suis bien sûr qu'il y a une façon très similaire en python

+0

c'est génial, merci @Haroun. laissez-moi l'essayer –

+0

@EdwardAshak si cela fonctionne, faites la réponse comme correcte. Meilleures salutations –