【发布时间】:2021-08-17 20:03:26
【问题描述】:
例如,我有以下 pyspark 数据框。我想在数据框中验证值是否为 'dd-mmm-yyyy' 格式并且显示通过具有状态或显示状态失败。
我尝试使用以下代码,但失败并出现错误 to_date is not defined。有关获得此通过和失败状态的任何输入
df.select(c,F.when(to_date(tsrcreateddate, 'dd-mmm-yyyy') ,"pass").otherwise("fail").alias("Check"))
【问题讨论】:
-
你确定函数 to_date 是正确的吗?或者是 Pandas 函数 pd.to_datetime()?您可以检查: import pandas as pd, value = pd.to_datetime('30-05-2021', format='%d-%m-%Y', errors='ignore')
-
是的 to_date 是正确的。我错过了 F.to_date。现在出现新错误::CaseWhen 中的 WHEN 表达式都应该是布尔类型,但第一个表达式的类型是 to_date