是否可以动态创建DataFrame。
示例想要在给定日期范围的两列中创建日期列表及其日期?
Input:- 03-01-2018 - 03-31-2018
03-01-2018 THU
03-02-2018 FRI
.......
03-31-2018 SAT
答案 0 :(得分:1)
您可以使用python,然后导出到spark:
import datetime
start = datetime.date(2018,3,1)
end = datetime.date(2018,3,31)
date_list = []
for i in range((end - start).days+1):
date_list.append(start+datetime.timedelta(days=i))
sc.parallelize(date_list).take(2)
[datetime.date(2018, 3, 1), datetime.date(2018, 3, 2)]
sc.parallelize(date_list).count()
31
如果您的日期范围在数据框内,则必须创建一个UDF,它将args作为2个日期并返回日期数组,然后将其展开。