我用的是spark 2.4.5。我想在pyspark数据框df中添加两个新列,date和calendar week。所以我尝试了以下代码:
from pyspark.sql.functions import lit
df.withColumn('timestamp', F.lit('2020-05-01'))
df.show()
但我收到了错误信息: AssertionError: col should be Column
你能解释一下如何添加日期栏和日历周吗?
我用的是spark 2.4.5。我想在pyspark数据框df中添加两个新列,date和calendar week。所以我尝试了以下代码:
from pyspark.sql.functions import lit
df.withColumn('timestamp', F.lit('2020-05-01'))
df.show()
但我收到了错误信息: AssertionError: col should be Column
你能解释一下如何添加日期栏和日历周吗?
2条答案
按热度按时间mqkwyuun1#
我在这里看到了两个问题:第一,如何给一个日期设置一个字符串。第二,如何从日期中得到一年中的一周。
迄今为止的强制转换字符串
你可以使用
cast("date")
或者更具体一点F.to_date
.提取一年中的一周
使用“格式化日期”可以将日期列格式化为所需的任何格式。
w
是一年中的一周。W
将是本月的一周。相关问题:pyspark获得周数月数
eanckbw92#
看来你错过了比赛
lit
在代码中的函数。以下是您要找的内容:这是你的答案,如果你想硬编码的日期和星期。如果您想以编程方式派生当前时间戳,我建议使用udf。