Spark将一列的值赋值给另外一列
如果有如下数据:

我要使col1 =col2,得到如下的结果:

在sparkR里面只需要 df$col1 = df$col2就可以实现了,那么在scala里面没有这样的方式,我要如何去实现呢。我搜索了很多次,问了很多群,没有啥简易的操作,于是我最后写下了这样的实现:
如评论区所说
使用withColumn可以快速的将这个列赋值到另外一列,以下 的内容是我入门时候写的。不用做参考了。

实现代码:
- 关键的函数
def col1SetValueToCol2(spark:SparkSession,table:DataFrame,setValueColName:String,getValueColName:String):DataFrame={
val changeDataFrame: DataFrame = table.drop(setValueColName).withColumn(setValueColName, table.col(getValueColName))
val resDataFrame: DataFrame = getDataFrameCo

博客讨论了如何在Spark Scala中将一列的值赋给另一列,由于SparkR有简便操作,而在Scala中则较为复杂。作者在搜索和询问后,提供了一种实现方式,并分享了实现代码,期望社区中有更优的解决方案。
最低0.47元/天 解锁文章
4967





