我有一个这样的spark Dataframe :
+-------------------+---------------------------+
| movie_description| tags|
+-------------------+---------------------------+
| ....| [comedy,horror]|
| ....| [romance]|
| ....| [thriller, sci-fi]|
| ....| [sci-fi, horror, thriller]|
+-------------------+---------------------------+
如何检查哪对标签最常出现在一起?有10个唯一标记值。
3条答案
按热度按时间flseospp1#
你可以在同一个dataframe上做一个join,在分解你的标签列之后,对所有可能的对进行连接,然后对每对标签执行一个groupBy,对它们进行计数,然后保持所有计数的最大值:
结果:
惊悚科幻小说
am46iovg2#
您可以使用FPGrowth Spark ML库来获取常用的标记
htrmnn0y3#
我有一个与已经发布的答案略有不同的方法。(注意,使用FPGrowth模型的答案似乎是最简单的,IMO)。