没有可用于 Vec[Double] 的 ClassTag
No ClassTag available for Vec[Double]
我对 scala 和 spark 有点陌生。现在我想为每个工人生成一个向量。当我使用这条线时,出现了两个错误:
val b = sc.parallelize(1 to n, n).map( i => DenseVector[Double]](10.0,20.0,30.0,40.0))
No ClassTag available for Vec[Double]
not enough arguments for method map: (implicit evidence: scala.reflect.ClassTag[Vec[Double]])org.apache.spark.rdd.RDD[Vec[Double]]. Unspecified value parameter evidence.
有人可以帮我解决这个问题吗?
以下适合我
scala> import breeze.linalg._
scala> val n = 2
n: Int = 2
scala> val b = sc.parallelize(1 to n, n).map( i => DenseVector[Double](10.0,20.0,30.0,40.0))
b: org.apache.spark.rdd.RDD[breeze.linalg.DenseVector[Double]] = MapPartitionsRDD[1] at map at <console>:24
这里是 rdd 中的一些数据:
scala> b.take(1)
res1: Array[breeze.linalg.DenseVector[Double]] = Array(DenseVector(10.0, 20.0, 30.0, 40.0))
我对 scala 和 spark 有点陌生。现在我想为每个工人生成一个向量。当我使用这条线时,出现了两个错误:
val b = sc.parallelize(1 to n, n).map( i => DenseVector[Double]](10.0,20.0,30.0,40.0))
No ClassTag available for Vec[Double]
not enough arguments for method map: (implicit evidence: scala.reflect.ClassTag[Vec[Double]])org.apache.spark.rdd.RDD[Vec[Double]]. Unspecified value parameter evidence.
有人可以帮我解决这个问题吗?
以下适合我
scala> import breeze.linalg._
scala> val n = 2
n: Int = 2
scala> val b = sc.parallelize(1 to n, n).map( i => DenseVector[Double](10.0,20.0,30.0,40.0))
b: org.apache.spark.rdd.RDD[breeze.linalg.DenseVector[Double]] = MapPartitionsRDD[1] at map at <console>:24
这里是 rdd 中的一些数据:
scala> b.take(1)
res1: Array[breeze.linalg.DenseVector[Double]] = Array(DenseVector(10.0, 20.0, 30.0, 40.0))