【发布时间】:2021-10-21 01:38:23
【问题描述】:
我有 2 个 spark 数据帧:
Location Date Date_part Sector units
USA 7/1/2021 7/1/2021 Cars 200
IND 7/1/2021 7/1/2021 Scooters 180
COL 7/1/2021 7/1/2021 Trucks 100
Location Date Brands units values
UK null brand1 400 120
AUS null brand2 450 230
CAN null brand3 150 34
在做了 unionByName 之后,我得到了
Location Date Date_part Sector Brands units values
USA 7/1/2021 7/1/2021 Cars 200
IND 7/1/2021 7/1/2021 Scooters 180
COL 7/1/2021 7/1/2021 Trucks 100
UK null null brand1 400 120
AUS null null brand2 450 230
CAN null null brand3 150 34
但我预期的数据框是:
Location Date Date_part Sector Brands units values
USA 7/1/2021 7/1/2021 Cars 200
IND 7/1/2021 7/1/2021 Scooters 180
COL 7/1/2021 7/1/2021 Trucks 100
UK null 7/1/2021 brand1 400 120
AUS null 7/1/2021 brand2 450 230
CAN null 7/1/2021 brand3 150 34
我需要 date_part 列中的值是所有行的数据框 1 值。 我试过这段代码:
df_result=df_final.select(df_1['date_part'], df_final["*"])
这将创建一个额外的列 date_part。 如何实现我预期的数据框?
【问题讨论】:
-
Date_part总是一样吗? -
是的,它在数据帧 1 中是一样的
-
此评论将解决您的问题。 stackoverflow.com/a/30045284/12843137
标签: python apache-spark pyspark