Apache spark 如何在Scala中将Spark数据帧逐个添加到Seq()
我使用创建了一个空的Seq() 我有一个名为Apache spark 如何在Scala中将Spark数据帧逐个添加到Seq(),apache-spark,Apache Spark,我使用创建了一个空的Seq() 我有一个名为createSamplesForOneDay()的函数,它返回一个数据帧,我想将它添加到这个Seq()x val temp = createSamplesForOneDay(some_inputs) // this returns a Spark DF x = x + temp // this throws an error 我得到以下错误- scala> x = x + temp <console>:59: error: typ
createSamplesForOneDay()
的函数,它返回一个数据帧,我想将它添加到这个Seq()x
val temp = createSamplesForOneDay(some_inputs) // this returns a Spark DF
x = x + temp // this throws an error
我得到以下错误-
scala> x = x + temp
<console>:59: error: type mismatch;
found : org.apache.spark.sql.DataFrame
(which expands to) org.apache.spark.sql.Dataset[org.apache.spark.sql.Row]
required: String
x = x + temp
正如这里所提到的-您不能使用
+
附加到列表中,您可以这样附加:
x = x :+ temp
但是,由于您有一个列表,您应该在元素前面加上前缀:
x = temp +: x
如果您也将输入按顺序打包,则可以编写更具功能性的内容,而不是逐个添加元素:
val inputs = Seq(....) // create Seq of inputs
val x = inputs.map(i => createSamplesForOneDay(i))
您不能使用
+
追加到列表中,您可以这样追加:
x = x :+ temp
但是,由于您有一个列表,您应该在元素前面加上前缀:
x = temp +: x
如果您也将输入按顺序打包,则可以编写更具功能性的内容,而不是逐个添加元素:
val inputs = Seq(....) // create Seq of inputs
val x = inputs.map(i => createSamplesForOneDay(i))
谢谢你的回答。它的第一部分就像一个符咒。对于使代码更具功能的第二部分,我试图做的是,为每一天逐个创建一个数据帧,并将其存储在某个地方。因此,Seq()中的元素数等于循环运行的天数或次数。谢谢您的回答。它的第一部分就像一个符咒。对于使代码更具功能的第二部分,我试图做的是,为每一天逐个创建一个数据帧,并将其存储在某个地方。因此,Seq()中的元素数等于循环运行的天数或次数。