我需要使用dict来过滤Dataframe,dict的构造方式是,key是列名,value是我要过滤的值:
filter = {'column_1' = 'Y', 'column_2' = 'N'}
我理解如何通过使用下面的函数来使用panda的Dataframe
def filter(df, filters):
for i in filters:
filtered_df = df.loc[(df[list(filters)] == pd.Series(filters)).all(axis=1)]
return filtered_df
然而, .loc
不是Pandas之外使用的方法,我还没有完全掌握spark复制品将是什么。我知道他们有 .locate
方法,但语法似乎完全不同。
非常感谢
1条答案
按热度按时间aydmsdu91#
下面是一个例子。您可以构造一个sql表达式字符串来过滤sparkDataframe。
或者可以将过滤条件构造为Spark柱: