代码之家  ›  专栏  ›  技术社区  ›  7125messi

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

  •  -1
  • 7125messi  · 技术社区  · 7 年前

    enter image description here

    我想要gt喜欢 2017-03-01 02:00:00 改变 2017-03-01 ,但第一张照片是 2021=2017+3+1 ,第二张图是 null

    2 回复  |  直到 7 年前
        1
  •  3
  •   MaFF    7 年前

    您可以使用 to_date

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

    串联不适用于 + concat 对列进行操作( '-' 应该在一个 lit ). 或 concat_ws 这就像一条蟒蛇 join ,使用相同的分隔符连接字符串。

    month dayofmonth 将返回整数,您将不会有te尾随0。

        2
  •  1
  •   narjes Karmeni    4 年前

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

    如果要将列转换为datetype,可以将其转换为:

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