Я новичок в освоении и пытаюсь использовать некоторые функции MLlib, чтобы помочь мне в школьном проекте. Кажется, что вся документация о том, как делать аналитику с MLlib, использует векторы, и мне было интересно, могу ли я просто настроить то, что я хотел сделать, для фрейма данных вместо вектора в искре.
Например, в документации по scala для выполнения PCA есть:
"val data = Array(
Vectors.sparse(5, Seq((1, 1.0), (3, 7.0))),
Vectors.dense(2.0, 0.0, 3.0, 4.0, 5.0),
Vectors.dense(4.0, 0.0, 0.0, 6.0, 7.0))
val df = spark.createDataFrame(data.map(Tuple1.apply)).toDF("features")
val pca = new PCA().fit(df)"
и т.д .... для этого здесь: https://spark.apache.org/docs/latest/ml-features.html#pca
Есть ли способ, которым мне не нужно создавать эти векторы и просто настраивать их на уже созданный кадр данных. Созданный мною фрейм данных содержит более 50 столбцов и более 15 000 строк, поэтому создание векторов для каждого столбца не представляется возможным.
У кого-нибудь есть идеи или предложения. Наконец, к сожалению, для моего проекта я ограничен использованием Spark в Scala. Мне не разрешается использовать Pyspark, Java для Spark или SparkR.
Если что-то было неясно, пожалуйста, дайте мне знать.
Спасибо!