我pyspark數據框和一個叫列過濾器: 「陣列>」Pyspark:投陣列嵌套結構來串
我要救我的csv文件數據框中,爲此我需要轉換數組到字符串類型。
我試着投它:DF.Filters.tostring()
和DF.Filters.cast(StringType())
,但兩種方案產生的列過濾器的每一行的錯誤消息:
的代碼如下
from pyspark.sql.types import StringType
DF.printSchema()
|-- ClientNum: string (nullable = true)
|-- Filters: array (nullable = true)
|-- element: struct (containsNull = true)
|-- Op: string (nullable = true)
|-- Type: string (nullable = true)
|-- Val: string (nullable = true)
DF_cast = DF.select ('ClientNum',DF.Filters.cast(StringType()))
DF_cast.printSchema()
|-- ClientNum: string (nullable = true)
|-- Filters: string (nullable = true)
DF_cast.show()
| ClientNum | Filters
|3 | [email protected]ce
| 218056 | [email protected]3c744494
樣品JSON數據:
{"ClientNum":"abc123","Filters":[{"Op":"foo","Type":"bar","Val":"baz"}]}
謝謝!
可以共享最少的代碼。 –
你能改造前打印模式和顯示數據。轉換後也打印模式。 –
模式似乎是正確的。 – Omar14