spark-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Oleksandr Olgashko <alexandrolg...@gmail.com>
Subject Re: o.a.s.u.Vector instances for equality
Date Tue, 04 Mar 2014 16:44:49 GMT
Thanks.
Does it make sence to add ==/equals method for Vector with this (or same)
behavior?


2014-03-04 6:00 GMT+02:00 Shixiong Zhu <zsxwing@gmail.com>:

> Vector is an enhanced Array[Double]. You can compare it like
> Array[Double]. E.g.,
>
> scala> val v1 = Vector(1.0, 2.0)
> v1: org.apache.spark.util.Vector = (1.0, 2.0)
>
> scala> val v2 = Vector(1.0, 2.0)
> v2: org.apache.spark.util.Vector = (1.0, 2.0)
>
> scala> val exactResult = v1.elements.sameElements(v2.elements) // exact
> comparison
> exactResult: Boolean = true
>
> scala> val delta = 1E-6
> delta: Double = 1.0E-6
>
> scala> val inexactResult = v1.elements.length == v2.elements.length &&
> v1.elements.zip(v2.elements).forall { case (x, y) => (x - y).abs < delta }
> // inexact comparison
> inexactResult : Boolean = true
>
> Best Regards,
> Shixiong Zhu
>
>
> 2014-03-04 4:23 GMT+08:00 Oleksandr Olgashko <alexandrolgash@gmail.com>:
>
> Hello. How should i better check two Vector's for equality?
>>
>> val a = new Vector(Array(1))
>> val b = new Vector(Array(1))
>> println(a == b)
>> // false
>>
>
>

Mime
View raw message