Ниже решение поможет вам:
val data = Array((2,Array("abc","23","xyz","70"),true),(3,Array("lmn","45","pqr","50"),false))
val rdd = sc.parallelize(data)
val df = rdd.toDF("house_no","family_details","ownership")
val res = df.select("house_no","ownership","family_details").withColumn("name", split($"family_details" (0), ",")(0)).withColumn("age", split($"family_details"(1), ",")(0)).withColumn("surmname", split($"family_details"(2), ",")(0)).withColumn("Weight", split($"family_details"(3), ",")(0)).drop("family_details")