scala - Spark 中的动态 IIF
问题描述
我有一个元数据驱动的 Spark 转换引擎。它对存储在 Scala Map[String, DataFrame] 中的数据帧执行一组操作。我有一个场景,用户要实现 IIF(三元 if):
if(<condition>,<iftrue>,<iffalse>)
if(cola=1,to_date(colb),null)
我的方法:我正在使用 where 子句来评估和 UDF 以返回并执行任何类似的函数(to_date.to_decimal 等)。对于上面的代码:
dfMap(source).where(<condn>).withColumn("<tarCol>",CustomUDF(<iftrue>))
我读过 UDF 会影响 Spark 的性能,我也面临同样的问题。请建议任何替代方案。
解决方案
推荐阅读
- r - 为什么我没有得到 R 中带有 sum 函数的列的总数?
- c# - 如何使 C# 方法中的代码作用于计时器?
- python - Python Turtle 窗口的大小(以像素为单位)是多少?
- ios - 使用 Objective-C 语法的多个参数调用 Swift 函数
- javascript - 在不使用 innerHTML 的情况下将数据添加到 div
- flutter - 不允许在 android 10 中将图像保存到本地目录
- python - 由于 IndexError,光标无法更新字段
- powershell - PowerShell 格式化 Cmdlet 输出
- python - 背景图像插值与 caryopy
- html - 溢出到页面右侧[已解决]