Wie erstelle ich einen benutzerdefinierten Transformer aus einer UDF?

Ich habe versucht, ein @ zu erstellen und zu speicherPipelin mit benutzerdefinierten Stufen. Ich muss ein @ hinzufügcolumn zu meinemDataFrame mit einemUDF. Daher habe ich mich gefragt, ob es möglich ist, ein @ zu konvertierUDF oder eine ähnliche Aktion in einTransformer?

Meine benutzerdefinierteUDF sieht so aus und ich möchte lernen, wie man es mit einem @ macUDF als benutzerdefiniertesTransformer.

def getFeatures(n: String) = {
    val NUMBER_FEATURES = 4  
    val name = n.split(" +")(0).toLowerCase
    ((1 to NUMBER_FEATURES)
         .filter(size => size <= name.length)
         .map(size => name.substring(name.length - size)))
} 

val tokenizeUDF = sqlContext.udf.register("tokenize", (name: String) => getFeatures(name))

Antworten auf die Frage(6)

Ihre Antwort auf die Frage