CORRELATION fonction d'agrégation

La fonction CORRELATION renvoie le coefficient de corrélation d'un ensemble de paires de nombres.

Read syntax diagramSkip visual syntax diagramCORRELATION(expression1 ,expression2)

Le schéma est SYSIBM.

expression1
Expression qui renvoie une valeur de tout type de données numériques intégré.
expression2
Expression qui renvoie une valeur de tout type de données numériques intégré.

Si l'un des arguments est à virgule flottante décimale, le résultat est DECFLOAT (34) ; sinon, le résultat est un nombre à virgule flottante à double précision. Le résultat peut être null. S'il n'est pas nul, le résultat est compris entre -1 et 1.

La fonction est appliquée à l'ensemble de paires (expression1, expression2) dérivées des valeurs d'argument par la élimination de toutes les paires pour lesquelles expression1 ou expression2 est null.

Si la fonction est appliquée à un ensemble vide, ou si STDDEV (expression1) ou STDDEV (expression2) est égal à zéro, le résultat est une valeur nulle. Sinon, le résultat est le coefficient de corrélation pour les paires de valeurs de l'ensemble. Le résultat est équivalent à l'expression suivante:
   COVARIANCE(expression1,expression2)/
   (STDDEV(expression1)*
   STDDEV(expression2))

L'ordre dans lequel les valeurs sont agrégées n'est pas défini, mais chaque résultat intermédiaire doit être compris dans la plage du type de données de résultat.

CORR peut être spécifié à la place de CORRELATION.

Exemple

A l'aide de la table EMPLOYEE, définissez la variable hôte CORRLN (virgule flottante à double précision) sur la corrélation entre le salaire et le bonus pour les employés du service (WORKDEPT)'A00'.
   SELECT CORRELATION(SALARY, BONUS)
     INTO :CORRLN
     FROM EMPLOYEE
     WHERE WORKDEPT = 'A00'

CORRLN est défini sur environ 9.99853953399538E-001 lors de l'utilisation de l'exemple de table.