Hive 配置单元中的列联表/交叉表
我试图以列联表的形式得到Hive中几个分类变量的结果Hive 配置单元中的列联表/交叉表,hive,hiveql,contingency,Hive,Hiveql,Contingency,我试图以列联表的形式得到Hive中几个分类变量的结果 Var1 = {val_11, val_12, val_13} Var2 = {val_21, val_22, val_23} 结果应该是这样的 val11 val12 val13 ------------------------------ val21 x x x val22 x x x val23 x
Var1 = {val_11, val_12, val_13}
Var2 = {val_21, val_22, val_23}
结果应该是这样的
val11 val12 val13
------------------------------
val21 x x x
val22 x x x
val23 x x x
其中x-各值组合的计数。我的数据中每个变量都有3个以上的分类值,大约100个
因此,我尝试了几个步骤:
CREATE TABLE tmp_1 as SELECT Var1, COUNT (DISTINCT Var2) AS Var2_count FROM my_table GROUP BY Var1;
CREATE TABLE tmp_2 as SELECT Var2, COUNT (DISTINCT Var2) AS Var1_count FROM my_table GROUP BY Var2;
那会给我tmp_1的钱
val11 num_val21
val11 num_val22
val11 num_val23
val12 num_val21
val12 num_val22
val12 num_val23
val13 num_val21
val13 num_val22
val13 num_val23
tmp_2也类似
现在,选择Var1,从tmp_1收集_集(Var2_计数)
选择Var2,从tmp_2中收集_集(Var1_计数)
对于许多分类值和2个以上的变量,是否有更好的正确方法 对不起,我不知道格式化是怎么回事,但它没有按我想要的方式工作。