Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.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 将数据流转换为数据帧时数据丢失_Scala_Apache Spark_Twitter_Spark Streaming_Spark Dataframe - Fatal编程技术网

Scala 将数据流转换为数据帧时数据丢失

Scala 将数据流转换为数据帧时数据丢失,scala,apache-spark,twitter,spark-streaming,spark-dataframe,Scala,Apache Spark,Twitter,Spark Streaming,Spark Dataframe,当我试图将数据流[String]转换为数据帧时,我遇到了一个问题 我的目标是将twitter流[rdd]转换为数据帧,但在我的代码(如下)中,转换不起作用,最后我只收到一个单词的数据帧 例如:大家好 我的数据框将只包含单词“hi” 这里是代码片段 val splited_test=texts.transform(rdd => rdd.map(x=> Row.fromSeq(x.split(" ")))) splited_test.foreachRDD { rdd =>

当我试图将数据流[String]转换为数据帧时,我遇到了一个问题

我的目标是将twitter流[rdd]转换为数据帧,但在我的代码(如下)中,转换不起作用,最后我只收到一个单词的数据帧

例如:大家好

我的数据框将只包含单词“hi”

这里是代码片段

val splited_test=texts.transform(rdd => rdd.map(x=> Row.fromSeq(x.split(" "))))


    splited_test.foreachRDD { rdd =>{

      val fields = new Array[StructField](1)
      fields(0)=(DataTypes.createStructField("text", StringType, true))
      val schema = DataTypes.createStructType(fields)
      val df= sqlContext.createDataFrame(rdd, schema)
}}

仅存储第一个单词,因为您使用了x.split(“”)

您创建了一个字段

修改代码如下

val splited_test=texts.transform(rdd => rdd.map(x=> Row.fromSeq(Seq(x))))

我现在明白了,谢谢兄弟