【发布时间】:2021-11-19 09:03:16
【问题描述】:
我是 PySpark 的新手,我正在尝试创建一个函数,当将列从 String 类型输入到 timestampType 时可以使用该函数。
输入列字符串如下所示:23/04/2021 12:00:00 AM
我希望将其转换为 timestampType,以便我可以使用 pyspark 获取最新日期。
下面是我目前创建的函数:
def datetype_change(self, key, col):
self.log.info("datetype_change...".format(self.app_name.upper()))
self.df[key] = self.df[key].withColumn("column_name", F.unix_timestamp(F.col("column_name"), 'yyyy-MM-dd HH:mm:ss').cast(TimestampType()))
当我运行它时,我得到一个错误:
NameError: name 'TimestampType' is not defined
如何更改此函数以获取预期的输出?
【问题讨论】:
-
你导入
TimestampType类了吗? -
感谢您的提示,我之前确实导入了它。但实际上缺少的是: from pyspark.sql.types import * 所以我移植了那个
标签: string function pyspark type-conversion unix-timestamp