我已经开始练习python。我正在尝试清除数据。我的pyspark数据框包含计数和日期。我想将缺失的日期添加为新行,并将那些缺失的日期计数为零。
我尝试使用这种技术Filling gaps in timeseries Spark
在此技术中,它使用时间戳记,并将它们转换为长数据类型,从而在几分钟内填补了空白。我只是没有约会的日期。
下面是我尝试从数据帧中获取最小值和最大值的代码。
现在,我正在努力创建仅缺少日期的日期范围,并将其放入新的数据框。然后将新的数据框与原始数据框合并。
from pyspark.sql.functions import col, min as min_, max as max_
minp, maxp = existing_rules_search.select(
min_("rule_date_cst").cast("date"), max_("rule_date_cst").cast("date")
).first()
这是我在数据框中的内容:
Col1 Col2 Col3 Count rule_date_cst 12121 Apple Apple Pie 1 3/28/2019 12121 Apple Apple Pie 1 3/29/2019 12121 Apple Apple Pie 1 4/4/2019
以下是我期望显示的结果。
Col1 Col2 Col3 Count rule_date_cst 12121 Apple Apple Pie 1 3/28/2019 12121 Apple Apple Pie 1 3/29/2019 12121 Apple Apple Pie 0 3/30/2019 12121 Apple Apple Pie 0 3/31/2019 12121 Apple Apple Pie 0 4/1/2019 12121 Apple Apple Pie 0 4/2/2019 12121 Apple Apple Pie 0 4/3/2019 12121 Apple Apple Pie 1 4/4/2019