【发布时间】:2015-12-03 10:21:15
【问题描述】:
我尝试在 Bluemix Spark 服务中执行我的 scala 代码,一旦我可以运行它并从我的本地虚拟机获得正确的结果。当我在 Bluemix Spark 中运行它时,我无法在笔记本中得到任何响应。
import org.apache.spark.mllib.linalg.{Vector, Vectors}
import org.apache.spark.mllib.linalg.distributed.RowMatrix
import org.apache.spark.mllib.linalg.Matrix
val input = sc.textFile("swift://notebooks.spark/pca.csv")
val header = input.first()
val inputData = input.filter(x => x != header).map(line=>line.split(','))
val inputVector = input.map{d=>
Vectors.dense(
d(1).toDouble, d(2).toDouble, d(3).toDouble, d(4).toDouble, d(5).toDouble, d(6).toDouble,
d(7).toDouble, d(8).toDouble, d(9).toDouble, d(10).toDouble, d(11).toDouble)}
val rowMatrix = new RowMatrix(inputVector)
val pca: Matrix = rowMatrix.computePrincipalComponents(5)
当我执行 intput.take(2) 时,我可以很好地得到结果,但执行 input.foreach(println) 没有结果。真奇怪。我怎样才能得到结果?
【问题讨论】: