to_date函数不适用于dd-MM-yyyy格式。要么它在输出中为空白,数据类型为date,要么它以正确的格式输出数据类型字符串。我需要的输出格式为dd-MM-yyyy,数据类型为date.so基本上,我需要的输出格式为dd-MM-yyyy,数据类型为date。在上图中,它给出了yy-MM-dd格式的o/p。请帮助。
from pyspark.sql.functions import to_date
import pyspark.sql.functions as F
df = spark.createDataFrame([("12-06-2023",)], ["input_date"])
df = df.withColumn("output_date",F.to_date(df.input_date,"dd-MM-yyyy"))
df.show()
type(df)
1条答案
按热度按时间lokaqttq1#
下面是使用PySpark的解决方案,我使用Spark 3.4和Python 3.11执行此示例。
Spark
to_date
函数将String转换为DataFrame列的Date格式。因此,我尝试了
date_format
函数将日期转换为您所需的格式。但是,date_format
函数返回的数据类型是string
。当我试图将输出date_format
转换为date
数据类型时,它返回null
。所以,到目前为止,我的理解是我们不能将其转换为日期数据类型。我正在尝试其他替代品。
PySpark代码如下: