【发布时间】:2018-01-16 17:11:39
【问题描述】:
我已经阅读了几篇关于使用“like”运算符通过包含字符串/表达式的条件过滤 spark 数据帧的文章,但想知道以下是否是在所需条件如下:
input_path = <s3_location_str>
my_expr = "Arizona.*hot" # a regex expression
dx = sqlContext.read.parquet(input_path) # "keyword" is a field in dx
# is the following correct?
substr = "'%%%s%%'" %my_keyword # escape % via %% to get "%"
dk = dx.filter("keyword like %s" %substr)
# dk should contain rows with keyword values such as "Arizona is hot."
注意
我正在尝试获取 dx 中所有包含表达式 my_keyword 的行。否则,对于完全匹配,我们不需要周围的百分号 '%'。
【问题讨论】:
标签: regex pyspark apache-spark-sql spark-dataframe pyspark-sql