Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 值toDF不是Seq[(Int,String)]的成员_Scala_Apache Spark - Fatal编程技术网

Scala 值toDF不是Seq[(Int,String)]的成员

Scala 值toDF不是Seq[(Int,String)]的成员,scala,apache-spark,Scala,Apache Spark,我正在尝试执行以下代码,但出现此错误: 值toDF不是Seq[(Int,String)]的成员。 我在main之外有case类,并且还导入了implicits。但我还是犯了这个错误。有人能帮我解决这个问题吗?我使用的是Spark 2.11-2.1.0和Scala 2.11.8 import org.apache.spark.sql._ import org.apache.spark.ml.clustering._ import org.apache.spark.ml.feature.

我正在尝试执行以下代码,但出现此错误:
值toDF不是Seq[(Int,String)]的成员。

我在main之外有case类,并且还导入了
implicits
。但我还是犯了这个错误。有人能帮我解决这个问题吗?我使用的是
Spark 2.11-2.1.0
Scala 2.11.8

  import org.apache.spark.sql._
  import org.apache.spark.ml.clustering._
  import org.apache.spark.ml.feature.VectorAssembler
  import org.apache.spark._


  final case class Email(id: Int, text: String)

  object SampleKMeans {

     def main(args: Array[String]) = {

     val spark = SparkSession.builder.appName("SampleKMeans") 
                 .master("yarn")
                 .getOrCreate()

     import spark.implicits._

     val emails = Seq(
             "This is an email from...",
             "SPAM SPAM spam",
             "Hello, We'd like to offer you") 
             .zipWithIndex.map(_.swap).toDF("id", "text").as[Email]

    }
  }

您已经有了一个
SparkSession
您可以导入
spark.implicits.\u
在您的情况下有效

val spark = SparkSession.builder.appName("SampleKMeans") 
             .master("local[*]")
             .getOrCreate()
import spark.implicits._
现在
toDF
方法按预期工作

如果错误仍然存在,则需要检查正在使用的
spark
scala
库的版本


希望这有帮助

我已经编辑了我的问题。我试图执行您的建议导入spark.implicits.\u但仍然收到相同的错误。您是在
local
还是
cluster
模式下运行的?如果您在本地运行,则需要将“纱线”替换为
local[*]
我正在尝试在集群上运行。甚至在执行之前,我就在Eclipse中遇到了这个错误。是的,这正是我遇到的错误。这和版本有关吗?您使用的是哪个版本的spark和scala?为什么这里需要sparkContext?你只需要进口它,你就可以走了。仅供参考。。刚刚在spark shell中尝试了你的代码,它按预期工作。