我有一个csv文件是"半结构化"
canal,username,email,age
facebook,pepe22,anyemail@gmail.com,24
twitter,foo-24,anyemail@gmail.com,33
facebook,caty24,,22
假设我希望第一列第二列和第三列成为RDD org.apache.spark.rdd.RDD [(String,String,String)]
我真的很新,我使用spark 1.4.1,我的代码到达
val rdd = sc.textFile("/user/ergorenova/socialmedia/allus/test").map(_.split(","))
有人可以帮助我吗?
我真的很感激
答案 0 :(得分:1)
val rdd = sc.textFile("/user/ergorenova/socialmedia/allus/test")
.map( _.split(",",-1) match {
case Array(canal, username, email) => (canal, username, email)
case Array(canal, username, email, age) => (canal, username, email)
})
您将获得由第一,第二和第三列组成的元组。