我有一个表格,格式如下:
A B C D
7 7 2 12
2 2 3 4
2 2 2 4
2 2 2 3
5 5 2 7
我想使用内置的相关函数来计算每一列之间的相关性(https://prestodb.io/docs/current/functions/aggregate.html 腐 eclipse (y,x)→ 双倍)
我可以运行所有列,每次都使用以下内容执行corr计算: select corr(A,B) from table
但是如果可能的话,我想减少访问presto并在一个查询中运行它的次数。
是否有可能得到通过某个阈值的列名,或者至少是一个查询中所有可能组合之间的相关分数?
谢谢。
2条答案
按热度按时间ebdffaop1#
您可以使用横向联接来取消拆分表,然后使用自联接和聚合:
这个
row_number()
只是为每一行生成一个唯一的id,然后用于自联接。您可能已经有了包含此信息的列,因此可能没有必要这样做。hfwmuf9z2#
我想计算每列之间的相关性
关联涉及两个系列的数据(在sql中是两列)。所以我把你的问题理解为:如何计算表中每一个可能的列组合的相关性。这看起来像: