在不使用循环的情况下,使用pyspark检查列中的多个条件



我有一个庞大的数据集(行数超过1000万),比如:

az
az
az
az
ca
bb
bb
bb
az
ca
bb
.
.
.

有一些限制,例如"ca"不能跟在"az"one_answers";az"不能跟在"bb"之后。有没有一个快速的方法来完成这个使用Pyspark不使用循环。

我想包含一个类似下面这个的列。

"ca" cannot come after "az" ---- replace "ca" with "az"
"az" cannot come after "bb" ---- replace "az" with "bb"
az
az
az
az
az
bb
bb
bb
ca
ca
ca
.
.

正如Luff Li所提到的,您似乎要求order by的功能。您可以放置多个条件,例如:

order by col1 desc, 
some_function(col2), 
col3 desc

在这种情况下,spark中的sql分析器将能够"考虑";所有的排序条件同时避免"for循环";你提到。

相关内容

  • 没有找到相关文章

最新更新