更改 Spark Dataframe 中的数据类型时出现 ParseException

ParseException when changing data type in Spark Dataframe

在我的 Databricks 笔记本中,将字符串转换为日期数据类型时,我在下面代码的最后一行得到 ParseExceptioncsv 文件中的列正确地具有日期格式的 hiring_date

问题:我这里可能做错了什么,我们如何解决这个错误?

备注:我正在使用 python 而不是 scala。我不懂scala。

from pyspark.sql.functions import *

df = spark.read.csv(".../Test/MyFile.csv", header="true", inferSchema="true")
df2 = df.withColumn("hiring_date",df["hiring_date"].cast('DateType'))

如果是你代码的最后一行,参考这个doc,代码修改如下:

df2 = df.withColumn("hiring_date", df.hiring_date.cast(DateType()))

您似乎为转换函数输入了错误的值。

以下代码也可以工作:

df2 = df.withColumn("hiring_date", df["hiring_date"].cast('Date'))