【发布时间】:2020-08-02 08:00:41
【问题描述】:
我有一个这样的 PySpark 数据框:
+----------+-----+
|account_no|types|
+----------+-----+
| 1| K|
| 1| A|
| 1| S|
| 2| M|
| 2| D|
| 2| S|
| 3| S|
| 3| S|
| 4| M|
| 5| K|
| 1| S|
| 6| S|
+----------+-----+
我正在尝试选择“S”存在的帐号。 例如:即使'1'的类型='S',我也不会选择它,因为它还有其他类型。但我会选择 3 和 6,因为它们只有一种类型“S”。
我现在正在做的是: - 首先获取所有存在“K”的帐户并将其删除;在此示例中删除了“1”和“5” - 其次查找存在“D”的所有帐户并删除它们,从而删除“2” - 第三次查找所有存在“M”的帐户,并删除“4”(“2”也有“M”,但在第 2 步被删除) - 第四找到所有存在“A”的账户,并删除它们
所以,现在“1”、“2”、“4”和“5”被删除,我得到“3”和“6”,它们具有唯一的“S”。
但这是一个漫长的过程,我该如何优化呢? 谢谢
【问题讨论】:
标签: dataframe apache-spark filter pyspark