如何使用 psyaprk 的数据框来获取 withColumn?

how to use psyaprk's dataframe to get a withColumn?

我想gt赞2017-03-01 02:00:002017-03-01,但是第一张图是2021=2017+3+1,第二张图是null

您可以使用 to_date 将时间戳转换为日期。

import pyspark.sql.functions as psf
df1.withColumn("day", psf.to_date("T_START"))

连接不适用于 pyspark 中的 + 您必须使用对列进行操作的函数 concat'-' 应该在 lit 中)。或者像 python join 一样工作的 concat_ws,用相同的分隔符连接字符串。

monthdayofmonth 将 return 整数,你不会有尾随 0。

这里有一个解决方案来获得你想要的东西:

    import pyspark.sql.functions as F
    df = df.withColumn("day", F.udf(lambda x : x.split(" ")[0])(F.col("T_START"))

如果您想将您的列转换为日期类型,您可以将其转换为:

    import pyspark.sql.types as T
    df = df.withColumn("day", col("day").cast(T.DateType()))