in core/src/main/scala/com/spotify/featran/transformers/PositionEncoder.scala [50:69]
override def prepare(a: String): Set[String] = Set(a)
override def featureDimension(c: SortedMap[String, Int]): Int = 1
override def featureNames(c: SortedMap[String, Int]): Seq[String] = Seq(name)
override def buildFeatures(
a: Option[String],
c: SortedMap[String, Int],
fb: FeatureBuilder[_]
): Unit =
a match {
case Some(k) =>
c.get(k) match {
case Some(v) => fb.add(name, v.toDouble)
case None =>
fb.skip(1)
fb.reject(this, FeatureRejection.Unseen(Set(k)))
}
case None =>
fb.skip(1)
fb.reject(this, FeatureRejection.Collision)
}