在 pyspark 中将日期转换为所需的格式

我有如下数据框并使用 pyspark 2.4


Name    doj

kevin   08/15/2013

George  06/21/2014


df.printSchema()

 -- Name (String)

 -- dob (String)

我想将 doj 转换为 YYYY-MM-DD 格式,并确保我需要使用 pyspark 将 doj 转换为 Datetype 而不是 String。有没有可用的特定函数?感谢您的回复


三国纷争
浏览 116回答 2
2回答

米琪卡哇伊

使用to_date()功能。df.show()#+------+----------+#|  Name|       doj|#+------+----------+#| Kevin|08/15/2013|#|George|06/21/2014|#+------+----------+from pyspark.sql.functions import *df.withColumn("doj",to_date(col("doj"),'MM/dd/yyyy')).show()#+------+----------+#|  Name|       doj|#+------+----------+#| Kevin|2013-08-15|#|George|2014-06-21|#+------+----------+df.withColumn("doj",to_date(col("doj"),'MM/dd/yyyy')).printSchema()#root# |-- Name: string (nullable = true)# |-- doj: date (nullable = true)

尚方宝剑之说

def dateconv(x):        if x == None:            x = 'null'            return x        else:            return x.strftime('%Y-%M-%D')dateconv(doj)python 中有类似的东西,我这样做了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python