我有这样一个数据集:| 1区|2区|| --------------|--------------|| A|A|| A|B|| B|A|| A|B|| B|B|我想要这个:| 分类|区域|计数|| --------------|--------------|--------------|| A|区域1|三|| B|区域1|第二章|| A|2区|第二章|| B|2区|三|我尝试了一组由Zone 1和Zone 2,但它不返回良好的结果,如果有人可以帮助我先谢了
fnvucqvd1#
堆叠 Dataframe ,然后执行groupby + count
groupby
count
expr = "stack(2, 'Zone 1', `Zone 1`, 'Zone 2', `Zone 2`) as (zone, category)" result = df.selectExpr(expr).groupBy('category', 'zone').count()
结果
+--------+------+-----+ |category| zone|count| +--------+------+-----+ | A|Zone 1| 3| | A|Zone 2| 2| | B|Zone 2| 3| | B|Zone 1| 2| +--------+------+-----+
1条答案
按热度按时间fnvucqvd1#
堆叠 Dataframe ,然后执行
groupby
+count
结果