Tôi tương đối mới với Spark và Scala.Chuyển đổi RDD [org.apache.spark.sql.Row] thành RDD [org.apache.spark.mllib.linalg.Vector]
Tôi bắt đầu với dataframe sau (cột đơn được làm từ một Vector dày đặc của đôi):
scala> val scaledDataOnly_pruned = scaledDataOnly.select("features")
scaledDataOnly_pruned: org.apache.spark.sql.DataFrame = [features: vector]
scala> scaledDataOnly_pruned.show(5)
+--------------------+
| features|
+--------------------+
|[-0.0948337274182...|
|[-0.0948337274182...|
|[-0.0948337274182...|
|[-0.0948337274182...|
|[-0.0948337274182...|
+--------------------+
Chuyển đổi thẳng đến RDD mang lại một thể hiện của org.apache.spark.rdd.RDD [ org.apache.spark.sql.Row]:
scala> val scaledDataOnly_rdd = scaledDataOnly_pruned.rdd
scaledDataOnly_rdd: org.apache.spark.rdd.RDD[org.apache.spark.sql.Row] = MapPartitionsRDD[32] at rdd at <console>:66
có ai biết làm thế nào để chuyển đổi DF này để một thể hiện của org.apache.spark.rdd.RDD [org.apache.spark.mllib.linalg. Vector] thay vào đó? Nỗ lực khác nhau của tôi đã không thành công cho đến nay.
Cảm ơn bạn trước cho bất kỳ con trỏ nào!