У меня есть фрейм данных, который выглядит следующим образом:
+---+-----+--------------------------------------------------------------------------------------------------+------+
|uid|label|features |weight|
+---+-----+--------------------------------------------------------------------------------------------------+------+
|1 |1.0 |[WrappedArray([animal_indexed,2.0,animal_indexed]), WrappedArray([talk_indexed,3.0,talk_indexed])]|1 |
|2 |0.0 |[WrappedArray([animal_indexed,1.0,animal_indexed]), WrappedArray([talk_indexed,2.0,talk_indexed])]|1 |
|3 |1.0 |[WrappedArray([animal_indexed,0.0,animal_indexed]), WrappedArray([talk_indexed,1.0,talk_indexed])]|1 |
|4 |2.0 |[WrappedArray([animal_indexed,0.0,animal_indexed]), WrappedArray([talk_indexed,0.0,talk_indexed])]|1 |
+---+-----+--------------------------------------------------------------------------------------------------+------+
и схема
root
|-- uid: integer (nullable = false)
|-- label: double (nullable = false)
|-- features: array (nullable = false)
| |-- element: array (containsNull = true)
| | |-- element: struct (containsNull = true)
| | | |-- name: string (nullable = true)
| | | |-- value: double (nullable = false)
| | | |-- term: string (nullable = true)
|-- weight: integer (nullable = false)
Но я хочу преобразовать функции из Array [Array] в просто Array
то есть flatMap массив столбцов в тот же столбец, чтобы получить схему как
root
|-- uid: integer (nullable = false)
|-- label: double (nullable = false)
|-- features: array (nullable = false)
| | |-- element: struct (containsNull = true)
| | | |-- name: string (nullable = true)
| | | |-- value: double (nullable = false)
| | | |-- term: string (nullable = true)
|-- weight: integer (nullable = false)
Заранее спасибо.