仕事で、ピアソン相関係数を算出するために、
としたところ、何故か、係数が有効範囲外(-1 ~ 1)になってしまい、ずっと悩んでいたのですが、
だと期待通りの値が得られます。よーく考えると、
あたりまえですが…つまり、1/2 の計算結果は 0 となり、
double a = ...;
double b = ...;
double den = Math.pow(a * b, 1/2);
double b = ...;
double den = Math.pow(a * b, 1/2);
としたところ、何故か、係数が有効範囲外(-1 ~ 1)になってしまい、ずっと悩んでいたのですが、
double den = Math.pow(a * b, 0.5);
だと期待通りの値が得られます。よーく考えると、
整数リテラル同士の除算の結果は…当然、整数
あたりまえですが…つまり、1/2 の計算結果は 0 となり、
double den = Math.pow(a * b, 0);
…素直にMath.sqrt(double)を使うことにしました。あーあぁ、初歩的なミスでハマッちまったぁ(泣)。ハズカシイ…