Есть ли способ расширить массив, например структуру, в Pyspark? Звезда не работаетPython

Программы на Python
Anonymous
Есть ли способ расширить массив, например структуру, в Pyspark? Звезда не работает

Сообщение Anonymous »


У меня есть фрейм данных со следующей вложенностью в Pyspark:

>content: структура важныйId: строка >данные: массив >элемент: структура важныйCol0: строка важныйCol1: строка Мне нужен следующий вывод:
importantId importantCol0 importantCol1 10800005 0397AZ 0397AZ 10800006 0397BZ 0397BZ
Я попробовал следующий код: df1 = df0.select(F.col('content.*'))

Я получил:
importantId данные 10800005 {importantCol0: 0397AZ, важныйCol1: 0397AZ 10800006 {importantCol0: 0397BZ, важныйCol1: 0397BZ
Я добавил:

df2 = df1.select(F.col('importantId'), F.col('data.*')

но я получаю следующую ошибку:

AnalysisException: можно использовать только типы данных структуры со звездочкой. Атрибут: ArrayBuffer(данные).

Кто-нибудь знает, как это исправить? Я ожидал найти способ расширить массив, например структуру

Вернуться в «Python»