CORR または CORRELATION
CORRELATION 関数は、数値の組の集合に関する相関係数を戻します。
- expression1
- 任意の組み込み数値、文字ストリング、 またはグラフィック・ストリングのデータ・タイプの値を戻す式。 引数が文字ストリングまたはグラフィック・ストリングの場合、関数を評価する前に DECFLOAT(34) にキャストされます。
- expression2
- 任意の組み込み数値、文字ストリング、 またはグラフィック・ストリングのデータ・タイプの値を戻す式。 引数が文字ストリングまたはグラフィック・ストリングの場合、関数を評価する前に DECFLOAT(34) にキャストされます。
いずれかの引数が 10 進浮動小数点数の場合、関数の結果は DECFLOAT(34) となります。それ以外の場合は、関数の結果は倍精度浮動小数点数です。結果が、NULL になることもあります。 値が NULL 値でない場合、結果は -1 から 1 になります。
この関数は、引数の値から導出されたペアの集合 (expression1, expression2) から、 expression1 または expression2 のどちらかが NULL であるすべてのペアを除外したものに対して適用されます。
この関数が空のセットに適用された場合や、
STDDEV(expression1) または STDDEV(expression2) のどちらかがゼロに等しい場合、
結果は NULL 値になります。
それ以外の場合、結果はその集合内にある値ペアの相関係数になります。
結果は、次のようにして割り出されます。
- sdexp1 を STDDEV(expression1) の結果に、sdexp2 を STDDEV(expression2) の結果にします。
- CORRELATION(expression1, expression2) の結果は以下になります。
COVARIANCE(expression1, expression2) / (sdexp1 * sdexp2)
注
特殊値 DECFLOAT を含む結果: 引数のデータ・タイプが 10 進浮動小数点であり、特殊値 sNaN または -sNaN、もしくは +Infinity と -Infinity の両方が集約に含まれる場合、エラーまたは警告が戻されます。それ以外の場合、+NaN または -NaN が検出されれば、結果は +NaN または -NaN になります。+Infinity または -Infinity が検出されれば、結果は +Infinity または -Infinity になります。
代替構文: SQL 規格に準拠して CORR を使用する必要があります。
例
- EMPLOYEE 表を使用して、ホスト変数 CORRLN を、部門 'A00' の従業員の給与と賞与の間に見られる相関に設定します。
サンプル表を使用した場合、CORRLN は 0.9760236077658643 に設定されます。SELECT CORRELATION(SALARY, BONUS) INTO :CORRLN FROM EMPLOYEE WHERE WORKDEPT = ‘A00’;
