In [3]:
import scala.io.Source
import scala.math.BigDecimal


val serialSrc = Source.fromFile("predictions_1.tsv").getLines
val parallelSrc = Source.fromFile("predictions_100.csv").getLines
val serial = serialSrc.map { line =>
    val spl = line.split("\t")
    val id = spl(4)
    val pv = spl(5).split(", ").map(_.replace("{1=","")).map(_.replace("0=","")).map(_.replace("}",""))
    (id,pv(1),pv(0))
}
val parallel = parallelSrc.map { line =>
    val spl = line.split(",")
    (spl(0).replace("\"",""),spl(1),spl(2))
}
(parallel.toArray.sorted,serial.toArray.sorted).zipped.map {
    case((ida,pv0a,pv1a),(idb,pv0b,pv1b)) => 
        ida == idb && 
        BigDecimal(pv0a.toDouble - pv0b.toDouble).setScale(3, BigDecimal.RoundingMode.HALF_UP).toDouble.abs <= 0.001 &&
        BigDecimal(pv1a.toDouble - pv1b.toDouble).setScale(3, BigDecimal.RoundingMode.HALF_UP).toDouble.abs <= 0.001
}.reduce(_&&_)


Out[3]:
true