Нет никакого разумного * способа сделать такую вещь, как Векторы не являются нативными типами.Вместо этого они реализуют UserDefinedTypes
и, как таковые, могут обрабатываться только косвенно .
Если данные узкие, вы можете рассмотреть возможность преобразования в совпадающие строго типизированные Dataset
, но вряд ли это принесетсерьезное улучшение (если не снижение производительности).
* Можно получить весьма непрямое решение, например:
- Добавление уникального идентификатора
- Вектор сбросав JSON.
- Чтение JSON путем повторной инициализации во внутреннее представление
StructType
. - Вектор разрыва с
pos_explode
(DenseVector
) или индексы и значения индексации (SparseVector
) - Самосоединение по уникальным и индексным признакам.
- Совокупность.
Любая такая вещь будет дорогой и совершенно непрактичной.