Искра dataframe выбирает один элемент из массива, но значение не то

df.select($"onenews".getItem(1), $"onenews").show(5,false)

результат показывает следующее: значение поля getItem (1) неправильное, а столбец «onenews», который я получил, взят из разделенных секций строки.

enter image description here

Я знаю причину, это из-за ленивых вычислений Spark, столбец onenews вычисляется из функции, которая содержит перемешивание.

В чем вопрос?

philantrovert 26.10.2018 08:24

onenews [1] значение неверно, см. массив onenews

hevensun 26.10.2018 08:26

Индексы массивов начинаются с 0, первый элемент - "getItem (0)"

pasha701 26.10.2018 09:32
2
3
286
1

Ответы 1

Я не понял ваш вопрос четко, насколько я понимаю, если вы хотите получить 0-й элемент из столбца onenews, вам нужно использовать getItem (0) insted из getItem (1).

образец кода:

df.select(df.col("onenews").getItem(0)).show()

$ "onenews" .getItem (1) ‘значение не в onenews (1), вы можете ясно видеть это на картинке

hevensun 26.10.2018 09:20

Другие вопросы по теме