用其他数据框列中的值替换pyspark数据框列中的值

时间:2020-10-09 15:31:26

标签: dataframe pyspark

please refer image1

please refer image2 output

想根据加入条件从另一个数据框中替换一个数据框中的某些值

当前方法:

df3 = df1.join(df2, (df1.x == df2.x), how='left').select(df1.x,df1.y,df2.y1)

def replacenull(col1,col2):
    if col2 is None :
        return col1
    else:
        return col2
   

UDF = udf(replacenull)

df4=df3.withColumn('y', UDF('y','y1'))

更有效的方法吗?

0 个答案:

没有答案