在 Spark Scala 中将文本文件转换为序列数组格式

Convert text file to sequence array format in Spark Scala

我有 sample.txt:

1 2 3
1 3 2 1 2
1 2 5
6

如何将其转换为与

相同的序列数组
(Seq( Array(Array(1), Array(2), Array(3)),
      Array(Array(1), Array(3), Array(2), Array(1), Array(2)),
      Array(Array(1), Array(2), Array(5)),
      Array(Array(6) )

我想尝试将文本文件用于 prefixSpan mllib Spark,check this

尝试:

val file = new java.io.File("path/to/sample.txt")
Source.fromFile(file).getLines().map(_.split(' ').map(s => Array(s.toInt)))

这实际上会生成一个迭代器(Iterator[Array[Array[Int]]] 类型),但可以使用 .toSeq.toList 或类似方法将其转换为序列。

使用 Spark(我现在无法检查它),这应该是这样的:

val data = sc.textFile("...")
data.map(_.split(' ').map(s => Array(s.toInt)))