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 正在尝试创建具有两列[Seq(),String]-Spark的数据帧_Scala_Apache Spark_Spark Dataframe - Fatal编程技术网

Scala 正在尝试创建具有两列[Seq(),String]-Spark的数据帧

Scala 正在尝试创建具有两列[Seq(),String]-Spark的数据帧,scala,apache-spark,spark-dataframe,Scala,Apache Spark,Spark Dataframe,当我在spark shell上运行以下操作时,会得到一个数据帧: scala> val df = Seq(Array(1,2)).toDF("a") scala> df.show(false) +------+ |a | +------+ |[1, 2]| +------+ 但当我运行以下命令来创建包含两列的数据帧时: scala> val df1 = Seq(Seq(Array(1,2)),"jf").toDF("a","b") <console>:2

当我在spark shell上运行以下操作时,会得到一个数据帧:

scala> val df = Seq(Array(1,2)).toDF("a")

scala> df.show(false)
+------+
|a     |
+------+
|[1, 2]|
+------+
但当我运行以下命令来创建包含两列的数据帧时:

scala> val df1 = Seq(Seq(Array(1,2)),"jf").toDF("a","b")
<console>:23: error: value toDF is not a member of Seq[Object]
    val df1 = Seq(Seq(Array(1,2)),"jf").toDF("a","b")
scala>valdf1=Seq(Seq(Array(1,2)),“jf”).toDF(“a”,“b”)
:23:错误:值toDF不是Seq[Object]的成员
val df1=Seq(Seq(Array(1,2)),“jf”)。toDF(“a”,“b”)
我得到一个错误:

值toDF不是Seq[Object]的成员


我该怎么办?toDF是否仅支持具有基本数据类型的序列

要使
toDF
方法工作,您需要
Seq
Tuple

val df1 = Seq((Array(1,2),"jf")).toDF("a","b")
// df1: org.apache.spark.sql.DataFrame = [a: array<int>, b: string]

df1.show
+------+---+
|     a|  b|
+------+---+
|[1, 2]| jf|
+------+---+
valdf1=Seq((数组(1,2),“jf”).toDF(“a”,“b”)
//df1:org.apache.spark.sql.DataFrame=[a:array,b:string]
df1.show
+------+---+
|a | b|
+------+---+
|[1,2]| jf|
+------+---+
为更多行添加更多元组:

val df1 = Seq((Array(1,2),"jf"), (Array(2), "ab")).toDF("a","b")
// df1: org.apache.spark.sql.DataFrame = [a: array<int>, b: string]

df1.show
+------+---+
|     a|  b|
+------+---+
|[1, 2]| jf|
|   [2]| ab|
+------+---+
val df1=Seq((数组(1,2),“jf”),(数组(2),“ab”).toDF(“a”,“b”)
//df1:org.apache.spark.sql.DataFrame=[a:array,b:string]
df1.show
+------+---+
|a | b|
+------+---+
|[1,2]| jf|
|[2]| ab|
+------+---+

谢谢你的帮助!所以当我创建一个序列(数组[Int],字符串)时,我错了,一个元组支持不同的类型,一个序列不支持,如果我是正确的,我得到了相同的错误。“value toDF不是Seq[Array[String]]的成员”有什么建议吗?延迟回复,但
导入spark.implicits.\uucode>