2
私はsparkでUDFを実装しようとしています。リテラルとカラムの両方を引数として取ることができます。これを達成するために、私はカレーUDFを使用できると信じています。Curried UDF - Pyspark
この関数は、文字列リテラルをDataFrame
の列の各値に一致させるために使用されます。私は以下のコードをまとめています: -
def matching(match_string_1):
def matching_inner(match_string_2):
return difflib.SequenceMatcher(None, match_string_1, match_string_2).ratio()
return matching
hc.udf.register("matching", matching)
matching_udf = F.udf(matching, StringType())
df_matched = df.withColumn("matching_score", matching_udf(lit("match_string"))(df.column))
"match_string"
は実際に私が反復処理していますリストに割り当てられた値です。
残念ながら、残念ながら、これは私が望んでいたとおりには機能しません。私は受け取っています
"TypeError: 'Column' object is not callable".
私はこの機能を正しく呼んでいないと思います。