2017-03-17 12 views
-2
input: (Array[Int],Array[Int]) 

ex) (Array(1),Array(2)), (Array(),Array()), (Array(4),Array(8)), ... 

空の配列を削除するにはどうすればよいですか?スカラーの空の配列を削除する方法

予想される出力は、あなただけのfilterを使用することができます

ex) (Array(1),Array(2)), (Array(4),Array(8))... 

答えて

2

です。あなたがリストを持っている場合:

val rdd = sc.parallelize(lst) 
// rdd: org.apache.spark.rdd.RDD[(Array[_ <: Int], Array[_ <: Int])] = ParallelCollectionRDD[44] at parallelize at <console>:27 

rdd.filter{ case (x, y) => ! (x.isEmpty && y.isEmpty) }.collect 
// res60: Array[(Array[_ <: Int], Array[_ <: Int])] = Array((Array(1),Array(2)), (Array(4),Array(8))) 

val lst = List((Array(1),Array(2)), (Array(),Array()), (Array(4),Array(8))) 

lst.filterNot{ case (x, y) => x.isEmpty && y.isEmpty } 
// res58: List[(Array[_ <: Int], Array[_ <: Int])] = List((Array(1),Array(2)), (Array(4),Array(8))) 

あなたはRDDを持っている場合

関連する問題