如何在spark scala中使用带有2列的array_contains?

2023-12-14

我有一个问题,我想检查字符串数组是否包含另一列中存在的字符串。我目前正在使用下面的代码,该代码给出了错误。

.withColumn("is_designer_present", when(array_contains(col("list_of_designers"),$"dept_resp"),1).otherwise(0))

error:

java.lang.RuntimeException: Unsupported literal type class org.apache.spark.sql.ColumnName dept_resp
  at org.apache.spark.sql.catalyst.expressions.Literal$.apply(literals.scala:77)

你可以写一个udf完成工作的功能

import org.apache.spark.sql.functions._
def stringContains = udf((array: collection.mutable.WrappedArray[String], str: String) => array.contains(str))
df.withColumn("is_designer_present", when(stringContains(col("list_of_designers"), $"dept_resp"),1).otherwise(0))

您可以从返回适当的值udf函数本身,这样你就不必使用when功能

import org.apache.spark.sql.functions._
def stringContains = udf((array: collection.mutable.WrappedArray[String], str: String) => if (array.contains(str)) 1 else 0)
df.withColumn("is_designer_present", stringContains(col("list_of_designers"), $"dept_resp"))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在spark scala中使用带有2列的array_contains? 的相关文章

随机推荐

  • 冒号“:”在 SQL 查询中起什么作用?

    什么是 在查询中代表 INSERT INTO MyTable ID VALUES myId 它如何获取所需的值 Edit 还有那个标志叫什么 我想用谷歌搜索 但它的名字是什么 查询中 代表什么 A 绑定变量 绑定变量允许多次重复使用单个 S
  • 防止按下 Enter 键时提交表单

    I have a form with two text boxes one select drop down and one radio button When the enter key is pressed I want to call
  • 为什么 rxjs 的 mergeMap 将数组变成单独的对象

    我根本不是 Typescript Javascript 或前端开发人员 我继承了Angular 13项目 有一个函数返回Observable
  • jQuery Mobile 如何在 jsfiddle.net 中工作?

    I have 这个简单的小提琴 它使用 jQuery mobile 但它不起作用 问 我缺少什么 在 管理资源 下 您还需要添加 jQM css 文件 http code jquery com mobile 1 0b2 jquery mob
  • 在 TemplateField 中用 Headertemplate 替换 HeaderText

    我有一个带有模板字段列的网格视图 TemplateFields 是这样的
  • sklearn 中留一交叉验证的 ROC 曲线

    我想绘制一个ROC曲线的分类器使用留一法交叉验证 好像有人问过类似的问题here但没有任何答复 在另一个问题中here据称 为了使用 LeaveOneOut 获得有意义的 ROC AUC 您需要 计算每次折叠的概率估计 每个折叠只包含 一个
  • 在 Android 中模拟键盘事件

    我有一个项目 我正在尝试触发键盘事件 我正在使用 Instrumentation Class 它在模拟器上运行得很好 但是当我在我的设备上启动它时 调用不起作用 有什么办法让它工作吗 另外 我在网上搜索了一些关于 IWindowManage
  • “npm run build”失败并出现 SyntaxError:Unexpected token

    我正在尝试将我的应用程序部署到 AWS 但在执行 npm run build 时遇到错误 这个错误似乎与 webpack config js 有关 但我不知道 因为我没有对该文件进行任何修改 我在这里发现了一个类似的问题 但没有多大帮助 S
  • 如何在 XAMPP 下配置 MySQL 以使用 IPv6 [关闭]

    Closed 这个问题是无关 目前不接受答案 我有 XAMPP v 3 1 0 出于测试目的 我需要使用 IPv6 格式连接到 MySQL 数据库 如何配置MySQL 找到我的 ini 更改 取消注释bind address for ipv
  • is_const::value 为 false ——为什么? [复制]

    这个问题在这里已经有答案了 为什么这个静态断言会触发 static assert std is const
  • 在 vue.js 路由加载之前检查权限

    有谁知道如何在渲染 vue js 路由之前检查用户的权限 我通过检查权限提出了部分解决方案created组件的阶段 created function var self this checkPermissions function resul
  • 如何使用 JavaConfig 从 Spring Security 中删除 ROLE_ 前缀?

    我正在尝试删除 Spring Security 中的 ROLE 前缀 我尝试的第一件事是 http servletApi rolePrefix 这不起作用 所以我尝试创建一个BeanPostProcessor如建议的http docs sp
  • 生命游戏数组索引越界

    我正在玩康威的生命游戏 我很确定我即将完成 但是当我运行它时 我得到Exception in thread main java lang ArrayIndexOutOfBoundsException 1 at game of life Ga
  • 从表中选择 *,其中日期 = 今天

    需要 PHP MySql 帮助 需要选择 今天 的所有记录 我的表有一列包含 unix 时间戳 我只想从表中选择 unix 时间戳 今天 很高兴在 Linux 命令行上执行此操作 只需要基本的 MySql 查询 我会选择 SQL 版本 SE
  • 显示 BLOB 图像 Laravel 4

    我在 mysql 上添加了 png 图像作为 BLOB 但是当我尝试检索它们时 我将它们作为文件获取 但无法显示为图像 下面是我的代码 控制器 public function post news image Input file image
  • 控制 ASP.Net MVC 中的输出缩进

    我的同事非常 热衷 将格式正确且缩进的 html 传送到客户端浏览器 这是为了使页面源代码易于被人阅读 首先 如果我有一个在站点中多个不同区域使用的部分视图 渲染引擎是否应该自动为我设置缩进格式 例如在 XmlTextWriter 上设置
  • ImageView圆角[重复]

    这个问题在这里已经有答案了 我希望图像有圆角 我实现了这个 xml 代码并在我的图像视图中使用它 但图像与形状重叠 我正在通过异步任务下载图像
  • ios音频单元remoteIO录音时播放

    我被要求将 VOIP 添加到游戏中 跨平台 因此无法使用 Apple gamekit 来做到这一点 已经有三四天了 我一直在努力让我的注意力集中在音频单元和远程IO上 我忽略了数十个示例等 但每次都只是对输入 PCM 应用简单的算法并在扬声
  • 使用 NSXMLParser 解析 XML

    我有一个关于 xml 解析的问题 通常 XML文件的样式是这样的
  • 如何在spark scala中使用带有2列的array_contains?

    我有一个问题 我想检查字符串数组是否包含另一列中存在的字符串 我目前正在使用下面的代码 该代码给出了错误 withColumn is designer present when array contains col list of desi