distinctBy

trait Seq[A] {
  def distinctBy[K](f: (A) => K): Seq[A]
}

distinctBy creates a copy of this collection by keeping only one of the elements that yield the same key after applying the function f to them.