1
我想在pySpark中使用UDF,它不返回原子值而是嵌套結構。 我知道我可以註冊UDF並手動設置它將返回的對象的模式,例如從pySpark中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
。
但是,我用spark-xml,csv等讀取模式並不知道,並且它是在運行時推斷的。有沒有這樣的功能,我可以用於我的UDF?火花讀者如何推斷模式? – Johnny16