我要把一个已经结案的案子放回去
用mysql、php或r从mysql数据库生成共现矩阵
在sql中创建共现矩阵有一个很好的解决方案:
SELECT a.uid first_uid, b.uid second_uid, COUNT(*) cnt
FROM my_table a JOIN my_table b ON b.id = a.id AND b.uid > a.uid
GROUP BY a.uid, b.uid
给出一张table:
id uid
1 a
1 b
1 c
2 a
2 b
2 c
3 b
3 c
产生如下共现矩阵:
first_uid second_uid cnt
a b 2
a c 2
b c 3
这也可以使用SQLServerunpivot命令完成。我想知道我们怎样才能用pig拉丁语实现类似的解决方案。尤其是在拉丁语中,有一种方法可以把不平等联系起来。
还有什么其他的方法可以用pig得到共现矩阵
1条答案
按热度按时间toiithl61#
你的问题的关键部分似乎是:
有没有一种方法可以在pig中用不等式进行连接
答案是肯定的,但并不总是很好。
解决这个问题的方法是先不带条件的连接,然后在不等式上过滤结果。
通常情况下,清管器能够将过滤器向上推一点,以防止临时结果爆炸,但我不确定这通常有多有效。