在 Pyspark 的输出文本文件中附加带有多行的列名

问题描述

使用 pyspark 读取一个空白文本文件。我必须用列名 [开始时间,结束时间] 附加开始和结束时间。每次运行代码时,它都会附加新行,列名将在文本文件中保持原样,所有这些都使用 pyspark。现在我已经尝试过这个。它没有向输出文本文件事件添加标题,我已使标题 = True。这个想法是在 20 分钟内运行以下命令,并将更新的开始时间和结束时间作为行添加到文本文件中。

Now = datetime.Now()
end_time_lo = Now.strftime("%d/%m/%Y %H:%M:%s")
print(end_time_lo)

path = r'C:\Users\320108174\chtn\matc\costa_factory\con_chart\Wallingford Project\start_end_time.txt'
start_end_time = [start_time_lo + " <----> " +end_time_lo]
df_l0 = spark.createDataFrame(start_end_time,StringType())
df_l0_txt_file = spark.read.format('text').option('header',False).load(path)
df_l0_txt_file = df_l0_txt_file.union(df_l0)
df_l0_txt_file = df_l0_txt_file.withColumnRenamed('value','L0_Notebook_Start_time----- 
L0_Notebook_End_time')
df_l0_txt_file.show(truncate=0)

df_l0_txt_file.coalesce(1).write.format('text').option('header',True).mode('overwrite').save(path)


Expected Output (text file):
Start Time                 End Time
12/02/2021 03:15:55 <----> 12/02/2021 07:14:46
12/02/2021 03:15:55 <----> 12/02/2021 07:14:46

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)