2011年3月6日日曜日

エクセル 度数分布関数 【備忘録】

エクセルで成績一覧表などに,度数分布を作りグラフ化している。
得点を降順にランクを作成して,人数を数えている。

例えばこんな感じである。

7年8組
得点基準 度数分布
100 0
99-90 0
89-80 0
79-70 0
69-60 0
59-50 0
49-40 0
39-30 0
29-20 0
19-10 0
9-1 0
0 0
人数合計 0
平均 0.0

この関数としては,countやsumやFREQUENCY 関数など考えられるが,
次のようにしたほうがいいことに気づいた。
だよなって感じです。

以下転載
----------------------------------------------------------

度数分布表の一番上の「90 点以上」の度数は、COUNTIF 関数の書式に従えばいいので、

=COUNTIF($B$2:$B$41, ">=90")

とすればOKです。
同様に一番下の「10 点未満」の度数は、

=COUNTIF($B$2:$B$41, "<10")

でいいはずです。

ところが困るのはこの中間の度数の求め方です。実は、COUNTIF 関数では条件を1つしか指定できないんです。「Excel の配列数式」のページでも紹介しているように、条件を2つ以上指定してカウントするためには配列数式を使うしかありません。これは、ちょっと面倒なので、初心者の方にはきついと思います。しかし、度数分布表のような単純なことなら、配列数式を使わなくても目的を達成できます。
たとえば、「80 点以上 90 点未満」の度数というのは、「80 点以上」の度数から「90 点以上」の度数を引けばいいんです!
そうすると次のような数式で求められることになります。

=COUNTIF($B$2:$B$41, ">=80")-COUNTIF($B$2:$B$41, ">=90")

こうすれば、それぞれ条件を1つだけ指定した通常の COUNTIF 関数の差を求めているだけですので、配列数式を使わなくてもいいわけです。
ほかの欄にも同様の数式を入力すれば度数分布表の完成です。

一般に、複数の関数を加減乗除などを使って組み合わせることで複雑な計算をさせるというのが、関数利用のこつです。以外に簡単な組み合わせで、今までできなかった計算ができたりするので、工夫してみる余地はあると思います。



http://hp.vector.co.jp/authors/VA014071/tips/countif.html

0 件のコメント: