可以在pyspark中同时使用isin()和通配符搜索吗?
我有一个数据框,我想根据条件列表筛选行。如果我知道确切的值-使用可以在pyspark中同时使用isin()和通配符搜索吗?,pyspark,apache-spark-sql,databricks,Pyspark,Apache Spark Sql,Databricks,我有一个数据框,我想根据条件列表筛选行。如果我知道确切的值-使用.isin()-这似乎可行,但当我想使用通配符-类似于。例如(“%condition%”)-筛选似乎不起作用。有人知道这是否可能吗?否则,我将不得不循环遍历这些条件,并为每个条件添加一个类似的过滤器。我已尝试在条件列表中使用*和不使用*来解包: filter_out_conditions=['condition_1', 'condition_2'] df.where(~col(check_col).isin(*filter_out_
.isin()
-这似乎可行,但当我想使用通配符-类似于。例如(“%condition%”)
-筛选似乎不起作用。有人知道这是否可能吗?否则,我将不得不循环遍历这些条件,并为每个条件添加一个类似的过滤器。我已尝试在条件列表中使用*和不使用*来解包:
filter_out_conditions=['condition_1', 'condition_2']
df.where(~col(check_col).isin(*filter_out_conditions))
df.where(~col(check_col).isin(filter_out_conditions))
您可以根据需要创建条件
cons = ['%1%','%3%']
cod = ' or '.join([f"col1 like '{i}'" for i in cons])
df.filter(cod)