Pyspark数据框过滤器基于列的出现

时间:2018-08-27 05:23:19

标签: python apache-spark dataframe pyspark

我有pyspark数据框,我想用A和B列过滤数据框。现在我只想获取B的值,其中A的出现大于某个数字N。

列A的like和id可以具有重复的值。现在,我正在对分组依据进行过滤,并使用效率不高的值列表,因此我正在寻找有效的解决方案。

示例

N = 5

输入Image

预期输出Image

您可以看到,由于阈值5,其余所有列都只选择了A列的ID1和ID3。

1 个答案:

答案 0 :(得分:0)

尝试以下操作:

df = ... # The dataframe
N = 5 # The value to test
df_b = df.filter(df['A'] >= N).select('B')

这将首先过滤仅包含A> = N且具有相应“ B”值的行的数据框。应用过滤器后,仅选择B列即可获得最终结果。