使用包含列的Dataframe时,列中的值是列表,
id | values
1 | ['good','good','good','bad','bad','good','good']
2 | ['bad','badd','good','bad',Null,'good','bad']
....
如何获得列表中显示频率最高的字符串?预期产量:
id | most_frequent
1 | 'good'
2 | 'bad'
....
使用包含列的Dataframe时,列中的值是列表,
id | values
1 | ['good','good','good','bad','bad','good','good']
2 | ['bad','badd','good','bad',Null,'good','bad']
....
如何获得列表中显示频率最高的字符串?预期产量:
id | most_frequent
1 | 'good'
2 | 'bad'
....
1条答案
按热度按时间vsmadaxz1#
我看不出有什么理由
explode
以及groupby
这里(计算密集型洗牌操作),如Spark2.4+
,我们可以使用higher order functions
要获得所需的输出:我们也可以使用
array_max
而不是sort_array
.