我的代码会将val: s
保存到result.txt
中
然后再次阅读文件
我想知道是否有一种方法我的代码可以直接运行而无需保存到另一个文件并将其读回。
我是用户val textFile = sc.parallelize(s)
但下一部分会有错误:value contains is not a member of char
import java.io._
val s = (R.capture("lines"))
resultPath = /home/user
val pw = new PrintWriter(new File(f"$resultPath%s/result.txt"))
pw.write(s)
pw.close
//val textFile = sc.textFile(f"$resultPath%s/result.txt") old method:save into a file and read it back
val textFile = sc.parallelize(s)
val rows = textFile.map { line =>
!(line contains "[, 1]")
val fields = line.split("[^\\d.]+")
((fields(0), fields(1).toDouble))
}
答案 0 :(得分:0)
我不得不说你遇到的问题是变量s是 String 数据类型,而你在String而不是集合上进行并行化。因此,当您运行map函数时,它将遍历String中的每个字符。