Calcul de coefficient de corrélation en utilisant PostgreSQL?
-
26-09-2019 - |
Question
J'ai travaillé sur la façon de calculer le coefficient de corrélation entre les deux champs si les deux sont dans la même table:
SELECT corr(column1, column2) FROM table WHERE <my filters>;
... mais je ne peux pas travailler sur la façon de le faire lorsque les colonnes sont de différentes tables (je dois appliquer les mêmes filtres aux deux tables).
Les conseils, s'il vous plaît?
La solution
Si les tableaux sont liés les uns aux autres de telle sorte que vous pouvez les rejoindre, il est assez simple. Il suffit de se joindre à eux et faire la corrélation:
SELECT corr(t1.col1, t2.col2)
FROM table1 t1
JOIN table2 t2
ON t1.join_field = t2.join_field
WHERE
<filters for t1>
AND
<filters for t2>
S'ils ne sont pas, alors comment êtes-vous censé savoir quelle combinaison de champs de chaque table que vous voulez exécuter sur corr
?
Autres conseils
essayer cette
SELECT corr(t1.column1, t2.column2)
FROM table1 t1
join table2 t2 on t1.SomeColumn = t2.SomeColumn
WHERE t1.<my filters>
AND t2.<my filters>;
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow