簡體   English   中英

Scala Spark-將RDD [List [scala.Double]]轉換為RDD [scala.Double]

[英]Scala Spark - convert RDD[List[scala.Double]] to RDD[scala.Double]

我正在調用mllib Statistics.corr()函數並收到以下錯誤:

(x:org.apache.spark.api.java.JavaRDD [java.lang.Double],y:org.apache.spark.api.java.JavaRDD [java.lang.Double],方法:字符串)scala.Double (x:org.apache.spark.rdd.RDD [scala.Double],y:org.apache.spark.rdd.RDD [scala.Double],方法:字符串)scala.Double無法應用於(org.apache .spark.rdd.RDD [List [scala.Double]],org.apache.spark.rdd.RDD [List [scala.Double]],字符串)

 println(Statistics.corr(a, b, "pearson")) 

我需要怎么做才能將數據類型轉換為正確的corr()輸入類型?

嘗試使用帶有標識功能的flatMap

val doubleRDD = listDoubleRDD.flatMap(identity)

如此答案中所建議,您想flatten RDD 不幸的是, RDD上沒有flatten方法,因此可以使用flatMap(identity)

println(Statistics.corr(a.flatMap(identity), b.flatMap(identity), "pearson"))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM