bugfix> arrays > 投稿

私は、Quartileラッパー内でネストされたIFステートメントを使用していますが、ほとんどの場合、値の範囲を手動で計算した場合に予想される値からわずかに外れた値を返すため、機能します。

私は見て回ったが、ほとんどの投稿と研究はフォーミュラの設計に関するものであり、私が観察しているこの奇妙な振る舞いの点で説得力のあるものは見つかっていない。

私の式(ctrl + shift enter as a array):= QUARTILE(IF(((F2:$F $10 = $W $4)($Q $2:$Q $10 = $W $3))($E $2:$E $10 = W $2)、IF($O $2:$O $10<>""、$O $2:$O $10))、1)

完全なデータセット: 0.868997877 * 0.99480118 0.867040346 * 0.914032128 * 0.988150438 0.981207615 * 0.986629288 0.984750004 * 0.988983643 *

*式には、満たす必要がある3つのAND条件があり、範囲を返す必要があります。 0.868997877 0.867040346 0.914032128 0.981207615 0.984750004 0.988983643

範囲に基づいて25%が計算されます。

数式から出力を取得すると、25%-ile(QUARTILE、1)は0.8803ですが、上記のデータポイントに基づいて手動で計算すると、0.8685になり、理由がわかりません。

IFステートメントはわずかな範囲外を識別しますが、IFステートメントを満たす値は異なる行または何かであるためだと思います。

回答 1 件
  • ここの表を見ると、サンプルから四分位(または他のパーセンタイル)を推定する方法が複数あり、Excelには2つあることがわかります。手作業で行っているものはQuartile.excのようなものでなければならず、式で使用しているものはQuartile.incのようなものでなければなりません

    基本的に、両方の式で四分位値のランクが決まります。整数ではない場合、補間します(たとえば、1.5の場合、四分位数は昇順で1番目と2番目の数値の中間にあります)。大きな違いはないと思うかもしれませんが、小さなサンプルでは大きな違いがあります。

    Quartile.excランク=(N + 1)/ 4

    Quartile.incランク=(N + 3)/ 4

    これはあなたのデータでどのように見えるかです

あなたの答え