[英]How can we create nested arrays in scala from a dataframe?
我有一個包含三列的 DataFrame; 如何將其轉換為 Scala 中的嵌套數組 - Array[Array[Double]]
?
當我嘗試映射時Array[(Double, Double)]
我收到Array[(Double, Double)]
:
val x= dataframe.select("time","sex")
.collect()
.map(x=>x(0).toString.toDouble ,x(1).toString.toDouble)
那是因為您的地圖正在返回一個元組。 由於您需要一個數組,因此您需要返回一個數組,如下所示。
val df = dataframe.collect().map(x => Array(x.getDouble(0), x.getDouble(1)))
要訪問結果中的第一項(嵌套數組),請使用df.head
或df(0)
編輯:
以柱狀方式 Array[Array[Double]] 擁有數據集,其中每一列都有自己的數組。
df.foldLeft((Array[Double](),Array[Double]())) {
case ((col1,col2),(x,y)) => (col1 :+ x) -> (col2 :+ y)
} match {
case (arr1,arr2) => Array(arr1,arr2)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.