Реагировать на элементы родного абсолютного позиционирования компонента onPress не работает

Если вы просто хотите преобразовать SparseVectors из pyspark.ml в pyspark.mllib SparseVectors, вы можете использовать MLUtils. Скажем, df - ваш фрейм данных, а столбец с SparseVectors называется «функциями». Затем следующие несколько строк позволяют выполнить следующее:

from pyspark.mllib.utils import MLUtils
df = MLUtils.convertVectorColumnsFromML(df, "features")

Эта проблема возникла для меня, потому что при использовании CountVectorizer из pyspark.ml.feature я не смог создать LabeledPoints из-за несовместимости с SparseVector от pyspark .ml

Интересно, почему их последняя документация CountVectorizer не использует «новый» класс SparseVector. Поскольку алгоритмы классификации нуждаются в методах LabeledPoints, это не имеет для меня никакого смысла ...

UPDATE: Я неправильно понял, что библиотека ml предназначена для объектов DataFrame, а библиотека mllib предназначена для объектов RDD. DataFrame-Datastructure рекомендуется начиная с Spark> 2,0, потому что SparkSession более совместим, чем SparkContext (но сохраняет объект SparkContext) и доставляет DataFrame вместо RDD. Я нашел этот пост, который дал мне «ага» -эффект: mllib и ml . Спасибо Альберто Бонсанто:).

Использовать f.e. NaiveBayes из mllib, мне пришлось преобразовать свой DataFrame в объекты LabeledPoint для NaiveBayes из mllib.

Но проще использовать NaiveBayes из ml, потому что вам не нужны LabeledPoints, но можно просто указать функцию - и class-col для вашего фрейма данных.

PS: Я боролся с этими проблемами часами, поэтому я почувствовал, что мне нужно опубликовать его здесь:)

0
задан Rusty 27 March 2019 в 07:32
поделиться