我想在Scala-Spark中创建索引行矩阵,它在向量中具有随机值。 我已经可以使用下面的代码创建一个本地数组,但是它会弄乱大尺寸-
import org.apache.spark.mllib.random.RandomRDDs._
import scala.util.Random
var r = scala.util.Random
var populationSize = 15
var chromosomeLength = 4
var randomPopulation = Array.fill(populationSize,chromosomeLength{r.nextFloat}
这应该产生类似
[1, [random vector of length 4]
2 , [random vector of length 4] ....15 [random vector of length 4] ]
是索引行矩阵。
答案 0 :(得分:1)
简单明了
import org.apache.spark.mllib.random.RandomRDDs
import org.apache.spark.mllib.linalg.distributed.{IndexedRowMatrix, IndexedRow}
new IndexedRowMatrix(
RandomRDDs.uniformVectorRDD(sc, populationSize, chromosomeLength)
.zipWithIndex.map { case (v, i) => IndexedRow(i, v) }
)
其中sc
是SparkContext
或