You could do this:
a.map { case (a, Array(b,c,d)) => (a,b,c,d) }
scala> val a = Array((1,Array(1.0,0.0,3.0)), (2,Array(0.0,2.0,1.0)))
a: Array[(Int, Array[Double])] = Array((1,Array(1.0, 0.0, 3.0)), (2,Array(0.0, 2.0, 1.0)))
scala> a.map({ case (a, Array(b,c,d)) => (a,b,c,d) })
res4: Array[(Int, Double, Double, Double)] = Array((1,1.0,0.0,3.0), (2,0.0,2.0,1.0))
A solution with support for up to 22-tuple. Of course, even this one assumes that all array members have the same lengths.
a.map {
case (a, Array(b)) => (a,b)
case (a, Array(b,c)) => (a,b,c)
case (a, Array(b,c,d)) => (a,b,c,d)
// pseudo-scala
case (n1, Array(n2,...,n22)) => (n1,n2,...,n22)
}