6
我有一個複雜的DataFrame結構,並希望能夠很容易地清空一列。我創建了隱含的類,可以連接功能並輕鬆地處理2D DataFrame結構,但是一旦DataFrame變得更加複雜,ArrayType或MapType就沒有多少運氣。例如:如何使用複雜的嵌套結構修改Spark Dataframe?
我已經架構定義爲:
StructType(
StructField(name,StringType,true),
StructField(data,ArrayType(
StructType(
StructField(name,StringType,true),
StructField(values,
MapType(StringType,StringType,true),
true)
),
true
),
true)
)
我想以產生具有場的MapType的data.value
設置爲null新DF,但因爲這是一個數組的元素我一直無法弄清楚如何。我認爲這將是類似於:
df.withColumn("data.values", functions.array(functions.lit(null)))
但最終產生的data.values
一個新的列,並且不修改數據陣列的values
元素。