У меня следующий искровой фрейм:
published data
2019-05-15T10:37:22+00:00 [{"@id":"1","@type":"type","category":"cat"},{"@id":"2","@type":"type","category":"cat1"}]
со следующей схемой:
root
|-- published: string (nullable = true)
|-- data: string (nullable = true)
Второй столбец «data» - это не массив, а массивоподобная строка.
Есть ли способ изящно преобразовать такую строку в объект последовательности, чтобы я мог разбивать различные @ids на отдельные строки?
Спасибо!
P.S. Код для создания df:
val df = Seq(("2019-05-15T10:37:22+00:00", """[{"@id":"1","@type":"type","category":"cat"},{"@id":"2","@type":"type","category":"cat1"}]""")).toDF("published", "data")