为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

三国纷争 2023-07-27 16:24:05
我有如下数据框并使用 pyspark 2.4Name    dojkevin   08/15/2013George  06/21/2014df.printSchema() -- Name (String) -- dob (String)我想将 doj 转换为 YYYY-MM-DD 格式,并确保我需要使用 pyspark 将 doj 转换为 Datetype 而不是 String。有没有可用的特定函数?感谢您的回复
查看完整描述

2 回答

?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

使用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)


查看完整回答
反对 回复 2023-07-27
?
尚方宝剑之说

TA贡献1788条经验 获得超4个赞

def dateconv(x):

        if x == None:

            x = 'null'

            return x

        else:

            return x.strftime('%Y-%M-%D')

dateconv(doj)

python 中有类似的东西,我这样做了


查看完整回答
反对 回复 2023-07-27
  • 2 回答
  • 0 关注
  • 75 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信