Scala中的Hellinger距离
给定包含离散概率分布的2Scala中的Hellinger距离,scala,math,machine-learning,Scala,Math,Machine Learning,给定包含离散概率分布的2Array[Double],如何在Scala中实现 def hellingerSimilarity(a1: Array[Double], a2: Array[Double]): Double = { } 我试图使用scala.math.sqrt函数,但它只适用于单个Double而不适用于数组。我已经习惯了Python,Scala/Spark中是否有类似的库?下面是Scala代码中的数学公式: def hellingerSimilarity(a1: Array[Dou
Array[Double]
,如何在Scala中实现
def hellingerSimilarity(a1: Array[Double], a2: Array[Double]): Double = {
}
我试图使用
scala.math.sqrt
函数,但它只适用于单个Double
而不适用于数组。我已经习惯了Python,Scala/Spark中是否有类似的库?下面是Scala代码中的数学公式:
def hellingerSimilarity(a1: Array[Double], a2: Array[Double]): Double = {
val tupleSum = a1.zip(a2).map(x => pow(sqrt(x._1) - sqrt(x._2),2)).reduce(_+_)
(1/sqrt(2)) * sqrt(tupleSum)
}
下面是scala代码中的数学公式:
def hellingerSimilarity(a1: Array[Double], a2: Array[Double]): Double = {
val tupleSum = a1.zip(a2).map(x => pow(sqrt(x._1) - sqrt(x._2),2)).reduce(_+_)
(1/sqrt(2)) * sqrt(tupleSum)
}