我试图从一个标签分隔的文本文件中逐行读取一个大的双打矩阵。这是在Scala / Apache Spark。
如果我执行以下操作:
val obs = sc.textFile(" path_to_text_file")
我得到了:org.apache.spark.rdd.RDD [String]
然而,要求是具有向量的RDD。你能帮忙吗?
谢谢和问候,
答案 0 :(得分:3)
这样的事可能适合你:
final val SEPARATOR_AS_REGEX = ";"//Replace it with your separator regex
obs.map(line => line.split(SEPARATOR_AS_REGEX).map(
//Parse the individual elements
arr => arr.map(s => parseDouble(s))
).map(ds => new DenseVector(ds)))//Convert to the expected type