Spark中RDD转换为DataFrame的三种方式

RDD转换为DataFrame
摘要由CSDN通过智能技术生成

第一种 :RDD—>DataFrame 直接手动指定schema

    //首先初始化
    val conf = new SparkConf().setAppName("transDemo").setMaster("local")
    val sparkSession = SparkSession.builder()
      .config(conf)
      .getOrCreate()
    val sc = SparkContext.getOrCreate(conf)
    //需求是wordCount,将结果转换为DataFrame
    val res = sc.makeRDD(List("hello world hello nice","good nice local took collect"))
    val res1 = res.flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_)
    //导入sparkSession下的implicits._
    import sparkSession.implicits._
    //转换操作,指定类colNames,这里就是word 和 count 顺便打印一下结果
    res1.toDF("word","count").show()
    sc.stop()
    sparkSession.stop()

结果:
在这里插入图片描述
第二种 :RDD—>DataFrame 通过反射推断Schema 通过样例类的方式

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值