创建动态数据帧pySpark

创建动态数据帧pySpark,pyspark,Pyspark,是否可以动态创建数据帧 示例:要为给定的日期范围在两列中创建日期及其日期的列表吗 Input:- 03-01-2018 - 03-31-2018 03-01-2018 THU 03-02-2018 FRI ....... 03-31-2018 SAT 您可以使用python进行此操作,然后导出到spark: 导入日期时间 开始=日期时间。日期2018,3,1 结束=日期时间。日期2018,3,31 日期列表=[] 对于范围内的i结束-开始。天数+1: date\u list.append

是否可以动态创建数据帧

示例:要为给定的日期范围在两列中创建日期及其日期的列表吗

Input:- 03-01-2018 - 03-31-2018

03-01-2018 THU
03-02-2018 FRI

.......

03-31-2018 SAT

您可以使用python进行此操作,然后导出到spark:

导入日期时间 开始=日期时间。日期2018,3,1 结束=日期时间。日期2018,3,31 日期列表=[] 对于范围内的i结束-开始。天数+1: date\u list.appendstart+datetime.timedeltadays=i sc.parallelizedate_list.2 [datetime.date2018,3,1,datetime.date2018,3,2] sc.parallelizedate_list.count 31
如果您的日期范围在数据框内,则必须创建一个UDF,该UDF将2个日期作为参数并返回一个日期数组,然后将其分解。

是的,我更喜欢分解选项,但是否可以对空数据框应用分解?我必须定义数据帧并应用explode?@syv您的数据帧不是空的。您的起点是带有开始/结束列的数据帧扫描我将开始/结束作为参数,当我将脚本提交到Spark时,我将提供它们?无论如何都是这样的。@syv如果它们是参数,你就使用我写的方法。分解只对来自dataframe的数据有效。好的,谢谢!!