У меня есть файл aparquet (идентификатор, функции). Я хочу преобразовать его в libsvm для применения алгоритма случайного леса. В файле паркета нет поля метки для применения алгоритма.
val data = spark.read.format("parquet").load("file:///usr/local/spark/dataset/data/user")
val splits = data.randomSplit(Array(0.7, 0.3))
val (trainingData, testData) = (splits(0), splits(1))
val trainingDf = trainingData.toDF()
val pca = new PCA()
.setInputCol("features")
.setOutputCol("pcaFeatures")
.setK(2)
.fit(assembled_df)
val pcaTrainingData = pca.transform(assembled_df)
val labeled = pca.transform(assembled_df).rdd.map(row => LabeledPoint(
row.getAs[Double]("label"),
row.getAs[org.apache.spark.mllib.linalg.Vector]("pcaFeatures")
))
val numClasses = 10
val categoricalFeaturesInfo = Map[Int, Int]()
val numTrees = 10 // Use more in practice.
val featureSubsetStrategy = "auto" // Let the algorithm choose.
val impurity = "gini"
val maxDepth = 20
val maxBins = 32
val model = RandomForest.trainClassifier(labeled, numClasses, categoricalFeaturesInfo,
numTrees, featureSubsetStrategy, impurity, maxDepth, maxBins)
, но появляется исключение
java .lang.IllegalArgumentException: Поле "метка" не существует.
Любая помощь?