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))