2016-08-24 5 views
0

ich das folgende Beispiel RDD erstellt habe,Erhalten Sie einzigartigen RDD Strings

val rdd = sc.parallelize(List(("[email protected]"), 
           ("[email protected]"), 
           ("[email protected]"))) 

//I used the following to split, 

val rdd1 = rdd.map(_.split("@")) //RDD[Array[String]] 

Was ich versuche jetzt zu tun ist, eine neue RDD mit verschiedenen Domänen zu erhalten, das heißt

val finalrdd = sc.parallelize(List(("domainA"), 
            ("domainB"))) 

fand ich this post aber ich konnte es nicht zur Arbeit bringen.

Antwort

1

Versuchen:

rdd.map(_.split("@")).flatMap { case Array(_, d) => d.split("\\.").headOption }.distinct 
Verwandte Themen