J'ai un fichier parquet contenant les colonnes id
et features
et je veux appliquer l'algorithme de PCA.
val dataset = spark.read.parquet("/usr/local/spark/dataset/data/user")
val features = new VectorAssembler()
.setInputCols(Array("id", "features" ))
.setOutputCol("features")
val pca = new PCA()
.setInputCol("features")
.setK(50)
.fit(dataset)
.setOutputCol("pcaFeatures")
val result = pca.transform(dataset).select("pcaFeatures")
pca.save("/usr/local/spark/dataset/out")
mais j'ai cette exception
java.lang.IllegalArgumentException: l'exigence a échoué : La colonne features doit être de type org.apache.spark.ml.linalg.VectorUDT@3bfc3ba7 mais était en fait ArrayType(DoubleType,true).
0 votes
Pouvez-vous nous montrer le résultat de
dataset.printSchema
s'il vous plaît?