] myrdd = spark.sparkContext.parallelize(rows) schema = T.StructType( [ T.StructField(name = "date_str",dataType=T.StringType(),nullable = True) ] ) df = spark.createDataFrame(myrdd,schema) # In[12]: df.printSchema() # In[13]: df = df.withColumn( "date", F.when( F.to_date(F.col("date_str"),"yyyy-MM-dd").isNotNull(), F.to_date(F.col("date_str"),"yyyy-MM-dd"), ).otherwise( F.when( F.to_date(F.col("date_str"),"yyyy MM dd").isNotNull(), F.to_date(F.col("date_str"),"yyyy MM dd"), ).otherwise(