我正在尝试使用withcolumn方法在现有pyspark数据框中添加一列。我想在此列中插入当前日期。从源代码中,我没有任何日期列,因此我将此当前日期列添加到数据框中,并将此数据框保存在表中,以便以后出于跟踪目的,我可以使用此当前日期列。我正在使用下面的代码
df2=df.withColumn("Curr_date",datetime.now().strftime('%Y-%m-%d'))
这里df是我现有的Dataframe,我想将df2保存为带有curr\u date列的表。但这里需要的是现有列或lit方法,而不是datetime.now().strftime(“%y-%m-%d”)。有人请指导我如何在我的数据框中添加此日期列。?
3条答案
按热度按时间moiiocjp1#
有一个Spark函数
current_timestamp()
.tmb3ates2#
使用其中一个
lit
或者current_date
```from pyspark.sql import functions as F
df2 = df.withColumn("Curr_date", F.lit(datetime.now().strftime("%Y-%m-%d")))
OR
df2 = df.withColumn("Curr_date", F.current_date())
vohkndzv3#
current_timestamp()
很好,但在序列化期间对其进行了评估。如果你喜欢使用
timestamp
一行的处理时间,则可以使用以下方法,