当前位置: 首页 > 知识库问答 >
问题:

字符串上的筛选器spark DataFrame包含

贺奕
2023-03-14

我使用的是Spark 1.3.0和Spark Avro 1.0.0。我从存储库页面上的示例开始工作。以下代码运行良好

val df = sqlContext.read.avro("src/test/resources/episodes.avro")
df.filter("doctor > 5").write.avro("/tmp/output")

但是如果我需要查看doctor字符串是否包含子字符串,该怎么办?因为我们是在字符串中编写表达式。我该怎么做“包含”?

共有2个答案

危飞文
2023-03-14

在pyspark中,SparkSql语法:

where column_n like 'xyz%'

可能行不通。

使用:

where column_n RLIKE '^xyz' 

这工作非常好。

狄峻熙
2023-03-14

您可以使用“包含”(contains)(这适用于任意序列):

df.filter($"foo".contains("bar"))

like(带有SQL简单正则表达式的SQL-like,其匹配任意字符和匹配任意序列):

df.filter($"foo".like("bar"))

rlike(如Java正则表达式):

df.filter($"foo".rlike("bar"))

根据您的要求。相似相似也应该适用于SQL表达式。

 类似资料:
  • 本文向大家介绍在 JavaScript 中包含唯一字符的筛选字符串,包括了在 JavaScript 中包含唯一字符的筛选字符串的使用技巧和注意事项,需要的朋友参考一下 问题 我们需要编写一个 JavaScript 函数来接受一个字符串 str。我们的函数应该构造一个只包含输入字符串中唯一字符的新字符串,并删除出现的所有重复字符。 示例 以下是代码- 输出结果 以下是控制台输出-

  • 我在用LuceneNet在个人项目中,需要处理案例,但找不到一个好的方法,Lucene将使用相同类型的查询处理这两个案例。 基本查询使用带有StandardAnalyzer的MultiFieldQueryParser和NumericRangedFilter按日期进行筛选(日期保存为长值)。 问题是,我希望过滤器处理空搜索字符串,而不必使用两个不同的查询解析器,一个用于空搜索字符串,另一个用于用户输

  • 我需要从Pandas数据框索引中过滤包含字符串模式的行。 我发现了下面的示例:如何从熊猫数据帧中筛选包含字符串模式的行,其中数据帧使用df[df[“col”].str.contains()]进行过滤,这在本示例中效果很好。 在本例中,如果我将列id复制到索引,我可以使用df.index.str.contains(ball),这也可以正常工作。 但是,当我使用df时。指数str.contains(“

  • 所以我知道我可以过滤 JPA中具有findByProperty的特定属性 但是如果我有一组字符串,我如何过滤呢?我不能对一组字符串使用\u属性,因为字符串没有属性? 假设我有以下实体: 和另一个属性为字符串的类: 这是我的存储库:

  • 我想从包含单词Evil(filterString)的数组中删除一些元素。 以下是我从原始阵列(来宾)获得的信息: 只希望客人数组更新一旦所需的字符串(邪恶)被过滤。

  • 我有一个返回字符串[][]的方法,如下所示: 我做错了什么?