1

下位 10% の平均を取る必要がある Excel のデータ列があります。私のデータは次のとおりです。

    1
    2 
    3
    4
    5
    6
    7
    8
    9 
    10

したがって、下位 30% の平均は - (1+2+3)/3 = 2 になります。Excel でこれを自動化する方法はありますか?答え?

4

3 に答える 3

3

より単純なバージョン: 配列数式または間接は必要ありません

A列にデータがあり、セルに必要なパーセンテージB1(10 進数として) があると仮定します。

=AVERAGEIF(A:A,"<="&SMALL(A:A,COUNT(A:A)*B1))
于 2013-08-18T03:13:16.403 に答える
2

データが A1:A10 にあり、目的の % が B1 にあると仮定します。

=AVERAGE(SMALL(A1:A10,ROW(INDIRECT("1:"&(B1*COUNT(A1:A10))))))

ノート!これは配列数式です。つまり、(セルではなく) 上部の数式バーに入力し、完了したらCtrl Shift Enterを押す必要があります。

これにより、数式がこれらの { } でラップされるため、正しく実行したことがわかります。それらを入力しても機能しません。Ctrl+Alt+Enter を押す必要があります。

それはどのように機能しますか?

ROW(INDIRECT("1:"&(B1*COUNT(A1:A10))))

Count は、リストに含まれるアイテムの数をチェックするため、平均化する必要がある数がわかります。B1が40%だとしましょう。

10 項目の 40% は 4 ですが、20 項目の 40% は 8 です。

10 エントリの長さなので、1 から 4 (40%) までの一連の数字である「配列」を作成します。

*SMALL(A1:A10*

SMALL は、範囲内で *n* 番目に小さい数値を検索します。1 から 4 までの配列を使用すると、最下位の 4 つのエントリが検出されます。

AVERAGE(

次に、結果を平均します:)

于 2013-08-13T16:42:03.103 に答える