spark DataFrame 多列同时重命名


我们遇到这样一个问题,
1 先生成一个包含所有预置字段的DataFrame(此时的字段名称是英文的)

2 根据传入的条件动态组合字段从1中的大的DataFrame 里 select的到想要的字段

3 但是我想存入的csv文件中要有中文表头

4 遇到的问题是:使用sql 拼接然后as 取别名为中文,会报出不支持

所以想到如下的方法来解决:

package ezr.df.drill

import org.apache.spark.sql.{Column, DataFrame, SparkSession}

import scala.collection.mutable
import org.apache.spark.sql.functions._

/**
  * @author liuchangfu@easyretailpro.com
  *         2019/12/24. 
  */
object SplitDfZhongWen{
  def main(args: Array[String]): Unit = {
    val spark: SparkSession = SparkSession
      .builder()
      .config("spark.serializer", "org.apache.spark.serializer.KryoSerializer")
      .appName("CfItem")
      .master("local[*]")
      .enableHiveSupport()
      .getOrCreate()

    import spark.implicits._
    /**第一步:的到所有字段的DataFrame*/
    val df: DataFrame = Seq(
     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值