我有一個數據幀,看起來像這樣:如何從數據集中獲取值並將其存儲在Scala值中?
scala> avgsessiontime.show()
+-----------------+
| avg|
+-----------------+
|2.073455735838315|
+-----------------+
我需要的價值2.073455735838315存儲在一個變量。我試着用
avgsessiontime.collect
而是開始給我任務不能序列異常。所以爲了避免我開始使用foreachPitition。但我不知道如何提取數組變量中的值2.073455735838315。
scala> avgsessiontime.foreachPartition(x => x.foreach(println))
[2.073455735838315]
但是,當我這樣做:
avgsessiontime.foreachPartition(x => for (name <- x) name.get(0))
我得到一個空白/空的結果。即使長度也是空的。
avgsessiontime.foreachPartition(x => for (name <- x) name.length)
我知道name的類型爲org.apache.spark.sql.Row,那麼它應該返回這兩個結果。
_「但開始給我任務不可序列化的異常。」_ < - 解決真正的問題不會引入新的(!)你可以粘貼異常+代碼?什麼是Spark版本? –