0
我有如下表:分组时选择最高计数的分类变数,
custID Cat
1 A
1 B
1 B
1 B
1 C
2 A
2 A
2 C
3 B
3 C
4 A
4 C
4 C
4 C
我需要的是通过客户ID中,我得到了最常见的类别这样的方式聚集(最有效的方法猫),第二频率和第三频率。上述输出应该
most freq 2nd most freq 3rd most freq
1 B A C
2 A C Null
3 B C Null
4 C A Null
当在计数领带我真的不关心什么是第一,什么是第二。例如,对于客户1而言,第二大多数频率和第三大频率可以互换,因为它们中的每一个仅出现一次。
任何sql都会很好,最好是hive sql。
谢谢
使用'dense_rank'取代'row_number'符合,这样的关系唐如果它们存在,则不会以第2和第3最常见的值出现。 –
@VamsiPrabhala是的,谢谢 –
也删除'[]'为列别名,因为它们在Hive中不受支持。 –