Spark: error: value split is not a member of org.apache.spark.rdd.RDD[String]

Spark: error: value split is not a member of org.apache.spark.rdd.RDD[String]

我试图执行的代码片段:

val textfile = sc.textFile("small_file.txt")
            val arr = textfile.split(",")
            for (v <- arr) {
                println(v)

我包含的包:

import org.apache.spark.SparkContext
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext._
import org.apache.spark.rdd.RDD._
import org.apache.spark.rdd.RDD

我得到的错误:

<console>:54: error: value split is not a member of org.apache.spark.rdd.RDD[String]
                val arr = textfile.split(",")
                               ^

如有线索将不胜感激!!

 val textfile = sc.textFile("small_file.txt") 

变量文本文件是 RDD[String] 而不是字符串,这就是为什么你会得到异常,因为 split 方法不是 RDD[String] 的成员,所以如果你必须打印文本文件的内容,你可以使用

textfile.foreach(println) (shorter version)

textfile.foreact(x => println(x)) (longer version)

谢谢

说的很清楚split不是RDD的方法。所以如果你想把文本文件里面的数据按照“,”来分割,那么就得用到RDD的map函数了。

textfile.map(line=>line.split(","))

有关详细信息,您可以在此处查看字数统计示例。

http://spark.apache.org/examples.html