[英]Dynamically infer Schema of returned object from UDF in pySpark
我想在pySpark中使用UDF,它不返回原子值而是返回嵌套結構。 我知道我可以注冊UDF並手動設置它將返回的對象的模式,例如
format = ArrayType(
StructType([
StructField('id',IntegerType()),
StructField('text',StringType())
]
)
spark.udf.register('functionName', functionObject, format)
並在UDF中使用python列表來匹配格式,例如
return [[1,'A'],[2,'B']]
但有沒有辦法避免在注冊UDF時顯式設置返回類型,而是自動推斷其架構?
如果我沒有設置返回類型,它會自動設置為StringType
。
是否有任何方法可以避免在注冊UDF時顯式設置返回類型,而是自動推斷其架構?
那沒有。 在調用udf之前必須知道模式,並且無法在運行時推斷出模式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.