spark数据清洗

复制代码
import org.apache.spark.{SparkConf, SparkContext}

object DataFilter {
  // 思路
  // 1. 读取数据,读入文本文件
  // 2. 对于文件中的每一行
  //    拆分出年龄split(",")(1)
  //    判断是不是数字,是,就保留记录"45","abc" (正则表达式 \d+)
  // 3. 把过滤之后的内容,保存到文件saveAsTexttFile()

  def main(args: Array[String]): Unit = {
    // 创建spark
    val conf = new SparkConf().setAppName("DataFilter").setMaster("local[*]")
    val sc = new SparkContext(conf)

    val rdd = sc.textFile("data/file.txt")

    // 过滤之后的rdd
    var rdd1 = rdd.filter(line => {
      // 拆分出年龄
     val age = line.split(",")(1)
     // 判断年龄是否是数字
      println(age)
      age.matches("\\d+")
    })

    //将所有的分区数据合并成一个分区
    rdd1 = rdd1.coalesce(1)
    //保存到文件
    rdd1.saveAsTextFile("data/file1.txt")
  }
}
相关推荐
字节跳动数据平台8 分钟前
一客一策:Data Agent 如何重构大模型时代的智能营销?
大数据·agent
boonya1 小时前
Kafka核心原理与常见面试问题解析
分布式·面试·kafka
用户Taobaoapi20141 小时前
京东图片搜索相似商品API开发指南
大数据·数据挖掘·数据分析
镭眸1 小时前
因泰立科技:用激光雷达重塑智能工厂物流生态
大数据·人工智能·科技
KIDAKN2 小时前
RabbitMQ 重试机制 和 TTL
分布式·rabbitmq
JAVA学习通3 小时前
【RabbitMQ】----初识 RabbitMQ
分布式·rabbitmq
IT研究室3 小时前
大数据毕业设计选题推荐-基于大数据的贵州茅台股票数据分析系统-Spark-Hadoop-Bigdata
大数据·hadoop·spark·毕业设计·源码·数据可视化·bigdata
Lx3525 小时前
Hadoop异常处理机制:优雅处理失败任务
大数据·hadoop
小嵌同学5 小时前
Linux:malloc背后的实现细节
大数据·linux·数据库
IT毕设梦工厂6 小时前
大数据毕业设计选题推荐-基于大数据的国家基站整点数据分析系统-Hadoop-Spark-数据可视化-BigData
大数据·hadoop·spark·毕业设计·源码·数据可视化