我有一个数据框,我正在尝试根据现有列的值创建一个新列:
domain="[('date','<=', time.strftime('%%Y-12-31')),('date','>=',time.strftime('%%Y-01-01'))]"
domain="[('date','<=', time.strftime('%Y-%m-%d')),('date','>=',time.strftime('%Y-%m-01'))]"
domain="[('date','<=', datetime.datetime.combine(context_today(), datetime.time(23,59,59))), ('date','>=', datetime.datetime.combine(context_today(), datetime.time(0,0,0)))]"
domain="[('date','<=', time.strftime('2020-12-31')),('date','>=',time.strftime('2000-01-01'))]"
我想在最后的条件下实现。当条件是dfg ['list']列不属于list = [“A”,“B”,“C”中的一个元素时, “D”,“E”,“F”],我想用消息引发运行时错误。不确定如何在pyspark中这样做。另外如果我是基于条件语句创建列,即.when和.otherwise,如何使用try除了块。
我正在使用pyspark 1.6。任何帮助深表感谢。
答案 0 :(得分:0)
这不是要走的路。构建控制流是针对Spark使用的SQL模型和功能模型。
如果你真的想要制动检查是否有任何“未知”的退出优雅:
if not dfg.where(dfg["min_time"] == "unknown").take(1):
... # Add your logic here