コンテンツにスキップ

高等学校数学I/データの分析

出典: フリー教科書『ウィキブックス(Wikibooks)』
高等学校数学 > 高等学校数学I > 高等学校数学I/データの分析

本項は高等学校数学Iのデータの分析の解説です。

はじめに(データの分析とは)

[編集]

中学校課程の資料の散らばりと代表値に続き、データの散布などの概念、また実際の処理がどのように行われるかを身近な事例やコンピュータの表計算ソフトを利用して学習します。大まかな内容は以下の通りです。

  • 第2章「資料の散らばり」では資料の分布具合を数値にする方法を学習します。
  • 第3章「相関関係」では2種類のデータにどんな関係があるかを学習します。
  • 第4章「仮設検定」では、数学Bで扱う仮設検定の基礎的な考え方を学習します。
  • 第5章「表計算(基礎編)」では表計算に関する基礎事項や用語を学習し、実際に表計算ソフトを用いて演習を行います。
  • 第6章「表計算(実践編)」では実際の表計算で知っていれば便利な項目を紹介しています。

資料の散らばりと代表値の内容は既習であるものとして解説を進めていきます。

この分野が基礎になる科目は数学Bの確率分布と統計的な推測があります。統計に加えて確率数列微積分の知識も必要となります。

表計算のセクション(第5章・第6章)は2011年度以前の課程「統計とコンピュータ」の範囲で現在の指導要領では学習しません。ここで取り上げた資料の数値確認や演習に活用するといいでしょう。予め各自使用している表計算ソフトの操作を知っておくとスムーズに学習が進められます。このページではMicrosoft Excelの書式に基づいています。実践編は余力があればとりかかってみて下さい。ただしここでは数学Bで学習する確率分布などの関数は扱っていません。演習を始める前に必ず(基礎編)の冒頭にある注意書きをお読み下さい。

この分野の演習問題は大学受験数学 統計とコンピューターをご覧下さい(旧課程のものですが内容に殆ど変更がないのでこのまま使用しています)。表計算演習は該当セクション内の実習と前述のページ演習問題2・3にて代えます。

以降、「資料の散らばりと代表値」でも用いた以下の資料を頻繁に使いますのでメモしておいたほうがよいでしょう。

資料1(体重の測定値)
出席番号 1 2 3 4 5 6 7 8 9 10
体重(kg) 60.3 57.9 65.4 56.1 53.6 62.7 70.0 55.8 67.1 63.1
資料2(体重の度数分布表)
階級 52.0以上~55.0未満 55.0~58.0 58.0~61.0 61.0~64.0 64.0~67.0 67.0~70.0 70.0~73.0
階級値 53.5 56.5 59.5 62.5 65.5 68.5 71.5
度数 1 3 1 2 1 1 1

資料の散らばり

[編集]

代表値が同じであってもその分布が代表値近くに密集していたりばらばらであったりと色々なことが考えられる。ここでは資料の散らばり具合の表す量について見てみよう。

範囲

[編集]

資料が取る最大値から最小値を引いた値をその資料の分布の範囲(はんい)と言う。

資料1の範囲は(kg)となる。

四分位数

[編集]

データを大きさの順に並べた時、25%、50%、75%に当たる数値をその資料の四分位数と言う。特に下位から25%に当たる数値を第1四分位数、 下位から75%に当たる数値を第3四分位数と言われる。下位から50%に当たる数値は第2四分位数と言うこともできるが、中央値と同義である。四分位数の英訳「Quartile」の頭文字を取ってそれぞれと表すこととする。

資料1の四分位数を求めてみよう。まずは資料を昇順に並びかえる。

資料3
順位 10 9 8 7 6 5 4 3 2 1
体重(kg) 53.6 55.8 56.1 57.9 60.3 62.7 63.1 65.4 67.1 70.0

まずは中央値を求めてみる。中央値のセクションでも述べた通り、この資料の中央値は5番目と6番目の平均である61.5kgである。

第1四分位数はこの資料では順位が6番目~10番目の中央値とも読み取ることができる。言い換えると8番目の値となるので56.1kgとなる。

第3四分位数も同様に順位が1番目~5番目の中央値とできるので求める数値は3番目の値の65.4kgである。

四分位範囲・四分位偏差

[編集]

第3四分値と第1四分値の差をその資料の四分位範囲、四分位範囲の半分のことをその資料の四分位偏差と言う。

資料1の四分位範囲は、四分位偏差はとなる。


箱ひげ図

[編集]

資料のばらつき具合をグラフにまとめて見やすくしたものを箱ひげ図と言う。

箱ひげ図の見方を以下で示す。なお、以下の図は資料3を参照して作成しているが、0.5kg未満の数値を切り捨てしてあるので正しく作成した図と等しくならないことには注意。

                      C
            +----------+------+       
       |----|         +|      |---------|
            +----------+------+    
       A    B          D      E         F          
+---+---+---+---+---+---+---+---+---+---+   (横軸1メモリは0.5kg)
50  52  54  56  58  60  62  64  66  68  70
  • Aは最小値(53.6→53.5)
  • Bは第1四分位数(56.1→56.0)
  • Cは平均値(61.2→61.0)
  • Dは中央値(61.5)
  • Eは第3四分位数(65.4→65.0)
  • Fは最大値(70.0)

外れ値

[編集]

データの中に含まれることがある、他の値とは極端にかけ離れた値のことを外れ値と呼ぶ。データのとる値を変数xとみなしたとき、外れ値の基準を以下のように定める。

外れ値が存在する場合、四分位数は全てのデータを用いて考えるが、箱ひげ図の左右のひげは外れ値を除いて考える。外れ値を箱ひげ図にあえて示す場合は以下のように⚪︎を用いて表す。

                         
      |        +----------+------+     |
⚪︎⚪︎⚪︎ |   |----|        + |      |---| |          ⚪︎
      |        +----------+------+     |
                            

外れ値は必ずしも測定ミス等で発生した異常な値とは限らない。外れ値の背景を調査することで、新たな問題が発見されたり問題解決の糸口が掴めたりする場合がある。

偏差

[編集]

変数xのとる値が

のn個あるとき、各値と平均値との差

を、それぞれ平均値からの偏差(へんさ)という。

資料1で、平均値からの偏差は次のようになる。

資料4
出席番号 1 2 3 4 5 6 7 8 9 10
体重 60.3 57.9 65.4 56.1 53.6 62.7 70.0 55.8 67.1 63.1
偏差 -0.9 -3.3 4.2 -5.1 -7.6 1.5 8.8 -5.4 5.9 1.9

さて、今知りたいのは資料全体の偏り具合の傾向であった。それを調べるために、試しに偏差の平均値を計算してみよう。

このように、偏差の平均値は常に0になる。

分散と標準偏差

[編集]

偏差の平均は常に0となるので、これを計算してもデータの散らばりの大きさを知ることはできないことがわかった。そこで、偏差の2乗の平均値を考える。この値を分散(ぶんさん、英:variance)という。分散をで表すと、次のようになる。

分散

この分散の定義は自然なものであるが、たとえば、データが身長の場合、その単位はcmであるが、分散は偏差の2乗の平均なので、その単位はになってしまう。そのため、単位を変量と合わせるために、分散の正の平方根sを考えることも多い。このsを資料xの標準偏差(ひょうじゅんへんさ、英:standard deviation)という。

標準偏差

資料1の分散と標準偏差を求めよう。

資料5
体重 60.3 57.9 65.4 56.1 53.6 62.7 70.0 55.8 67.1 63.1
偏差 -0.9 -3.3 4.2 -5.1 -7.6 1.5 8.8 -5.4 5.9 1.9
偏差の2乗 0.81 10.89 17.64 27.04 57.76 2.25 77.44 29.16 34.81 3.61

分散

標準偏差sは


度数分布表から分散と標準偏差を求めるときは次のようになる。

度数分布表からの分散と標準偏差

階級値をとし、それに対応する度数をとする。分散と標準偏差sは

偏差値(コラム)

[編集]

諸君も興味を持っているかもしれない大学受験の世界では、「偏差値」という数値がしばしば取り上げられる。偏差値は、次の式で計算される。

偏差値

の中の数値の偏差値は、

10とか50といった定数は、出てきた数値が直感的にわかりやすい大きさとなるようにしている定数(規格化定数という)であり、直接に意味はない。注目すべきは、この計算式の中に、平均と標準偏差が含まれているということである。つまり、同じ学力を持った人どうしであっても、違う試験を受ければ、試験を受けた他の人たちの動向によって偏差値は大きく変化するということである。そのような数値であるので、少しの変化にあまり一喜一憂しすぎないようにしたい。

分散と2乗の平均値

[編集]

分散の式は、次のように変形できる。

すなわち、公式の形にするならば、次のように書ける。

分散と2乗の平均値
(xの分散) = (x2の平均) - (xの平均)2


この式を使って、資料1の分散を求めよう。

の平均は

xの平均の2乗は

よって、分散は

と、前に出した方法と同じ値になる。

変量の変換(コラム)

[編集]

変量xについてのデータがあり、その平均値、分散、標準偏差をそれぞれとする。

定数を用いて新たな変量yをで定義する。

このときyのデータはn個の値を持ち、それはとなる。


yのデータの平均値は、


を用いると、yのデータの分散は


また、上式よりyの標準偏差は


このように、変量xを定数a,bを用いた一次式によって別の変量yに変換した際、のみで表すことができる。このような処理を変量の変換と呼ぶ。

なお、数学Bの「統計的な推測」において、確率変数における変量の変換と期待値の変量変換について取り扱う。

相関関係

[編集]

今までは1種類のステータスについてのデータ分析を行ってきた。ここでは2種類のステータスがどのような傾向になっているか見て行くこととしよう。

散布図

[編集]

以下の資料6資料1に身長の値を加えたものである。

資料6
出席番号 1 2 3 4 5 6 7 8 9 10
体重(kg) 60.3 57.9 65.4 56.1 53.6 62.7 70.0 55.8 67.1 63.1
身長(cm) 161.2 154.3 162.8 160.4 155.7 163.5 172.5 166.4 173.2 164.0

例えば、上の資料6の体重をx(kg)、身長をy(cm)として、点を座標平面上にとったとする。

2つの変量からなる資料を平面上に図示したものを散布図(さんぷず)または相関図(そうかんず)という。以下は資料8の相関図である。点の付近にある数字はその数値に該当する人の出席番号を表す。

一般に、散布図において、

  • 2つのデータの一方が増えるとき、もう一方も増える傾向にある場合、正の相関関係があるという。
  • 2つのデータの一方が増えるとき、もう一方が減る傾向にある場合、負の相関関係があるという。
  • 2つのデータの間に、正の相関関係も負の相関関係もない場合、相関関係はないという。

相関係数

[編集]

2つのデータx , yについて、次のn個の値の組を考える。

xの平均値を、yの平均値をとすると

また、xの標準偏差を、yの標準偏差をとすると

ここで

……(1)

の値の符号について考える。(1)をxとyの共分散(きょうぶんさん、英:covariance)という。

共分散が正のときは、となるものが、よりも多いと考えられる。

すなわち

かつ 

または

かつ 

が多いということになる。

よって、共分散が正のとき、xとyには正の相関関係があるといえる。


共分散が負のときは、となるものが、よりも多いと考えられる。

すなわち

かつ 

または

かつ 

が多いということになる。

よって、共分散が負のとき、xとyには負の相関関係があるといえる。


共分散の値は、資料x , yの内容によって大きく値が変わるので、x , yの偏差をそれぞれの標準偏差で割った値の積の平均値

を考え、この値を資料x , yの相関係数(そうかんけいすう、英: correlation coefficient)といい、rで表す。

であるから、

相関係数

xの平均値を、yの平均値をとすると、相関係数rは


相関係数rは、一般にが成り立つ。

  • 相関係数rの値が1に近いほど、正の相関が強くなる。このとき、相関図の点は右上がりに分布する。
  • 相関係数rの値が-1に近いほど、負の相関が強くなる。このとき、相関図の点は右下がりに分布する。
  • 相関係数rの値が0に近いときは、相関は弱くなる。

ではこれを用いて資料6の相関関係を見てみよう。

資料7
出席番号 1 2 3 4 5 6 7 8 9 10
体重(kg) 60.3 57.9 65.4 56.1 53.6 62.7 70.0 55.8 67.1 63.1
体重偏差 -0.9 -3.3 4.2 -5.1 -7.6 1.5 8.8 -5.4 5.9 1.9
身長(cm) 161.2 154.3 162.8 160.4 155.7 163.5 172.5 166.4 173.2 164.0
身長偏差 -2.2 -9.1 -0.6 -3.0 7.7 0.1 9.1 3.0 9.8 0.6

よって相関係数rは

となり、この10人の身長と体重には正の相関関係があることが分かる。

仮設検定

[編集]

表計算(基礎編)

[編集]

アンケートなど、資料の数が多い場合には手作業で計算をすると膨大な時間がかかる。そこでコンピュータの表計算ソフト(ここではMicrosoft Excelを例に取る)を用いて統計処理を行ってみよう。

コンピュータにMicrosoft Excelが入っていない場合はフリーソフトのOpenoffice Calcなどで代用できる。自身のOS(Windows,Mac,Linuxなど)に合ったバージョンをダウンロードしないと動かないので注意。

「はじめに」のセクションでも述べた通り、ここから先は学習指導要領外となりますので余力のある方が学習するといいでしょう。

  • 演習上の注意(wikibooks免責事項もお読み下さい)
    • コンピュータ操作中に何らかの不具合が生じても、一切の責任を負いかねます。
    • 必ずしも当ページの説明と実際の表計算ソフトの動作が一致するとは限りません。
    • 学校のコンピュータを使用する場合は必ずコンピュータ室担当の先生に許可を貰って下さい。

表計算ソフト

[編集]

表計算ソフトを起動すると長方形の何も書かれていない枠が無数に並んでいる。この枠それぞれのことをセルと言う。また1,2,3,・・・から右に出るラインそれぞれをと言い、A,B,C,・・・から下に出るラインそれぞれをと言う。

セルの個々の呼び方は列番号→行番号のように表す。例えば列番号がC、行番号が3であるセルは「C3のセル」であると言う。

表1
A B C D E
1 30 2
2 20 4
3 40 6
4 35 5
  • 問:A2のセル・B3のセルに当たる数値をそれぞれ答えよ。また、「35」・「2」はそれぞれどのセルに入力されているか。
  • 実習1:表計算ソフトを起動し、上記の表を作成してみよ。各セルをクリックすると文字入力待機状態になり、キーボードからの入力を受け付ける。

数値計算

[編集]

ここでは数値が入力されたセルに対しての計算方法を学ぶ。表計算ソフトによって計算式の種類や入力方法など異なる場合があるので事前に確認しておくこと。ここではよく用いられる演算式を示すが、詳細は表計算ソフトのヘルプ・表計算ソフトについて書かれた書籍を参考にして欲しい。

表計算ソフトでは直接セルに計算式を入力することによって、指定されたセルに対して計算を行い、その実行結果が計算式を入力したセルに反映される。またそのセルを複写すると複写先のセルに応じた計算式となって入力され、その実行結果が表示される。(※詳細は実践編「セルの参照」で)

演算子

[編集]

セルに計算式を入力することによって様々な計算ができる。また、その計算に必要な記号のことを(算術-)演算子と言う。一般にX1のセルとY1のセルに入力されている数値の計算は以下のようになる。

  • X1を代入・・・
  • X1とY1の和・・・
  • X1からY1を引いた値・・・
  • X1とY1の積・・・
  • X1をY1で割った値の整数部分・・・
  • X1をY1で割った余り・・・
  • X1をY1回掛けた値(べき乗)・・・ ^
  • 実習2:表1のC1のセルに、C2のセルに、C3のセルに、C4のセルにと入力してみよ。また、それらの数値が他の方法で計算した結果と合致しているか確かめよ。

関数

[編集]

一般に関数とはxの値を決めるとyの値が1つに定まるものであるが、コンピュータ分野においての関数は一般のそれとは異なり用途別に予め用意された計算式のことを表す。この時計算対象のセルを括弧で指定するが、括弧内を引数ひきすう)と言う。X1のセルに入力された数値の演算の代表的な例を以下に挙げる。関数の計算結果を出力することを値を返すと言い、その値のことを返り値と言う。表計算ソフトには膨大な種類の関数が用意されているが、このページでの紹介は極一部に留める。

  • 正の平方根・・・
  • 絶対値・・・
  • X1を超えない最大の整数・・・
  • 整数値で四捨五入・・・

今の段階ではあまり気にしなくてもよいが三角関数を用いる場合は弧度法(「弧の長さ半径の長さ」で記述する角の測り方で、単位はラジアン:詳細は数学IIで勉強する)での取扱いになる為、度数法での記述の場合は予め弧度法に直しておかなければならない。(※詳細は実践編「関数の仕様」で)

度数法から弧度法への変換は、とすればよい。

  • 正弦(サイン)・・・
  • 余弦(コサイン)・・・
  • 正接(タンジェント)・・・

またX1・X2・X3・・・Xnのセルに対して演算を行う場合は以下のようになる。A1・B1・C1・・・x1のセルに対して演算する場合は以下の(X1:Xn)を(A1:x1)と書き換えればよい。

  • セルの個数・・・
  • 全ての和・・・
  • 平均値・・・
  • 中央値・・・
  • 最頻値・・・

グラフの作成

[編集]

以下の表は資料2を表計算ソフトに入力したものである。ただし階級は、52.0kg以上55.0kg未満の階級のことを52.0-55.0などと表すことにする。セルに入る文字が長くデフォルトの大きさで収まらない場合、セルの大きさを調節して表を見やすくしてみよう。グラフの作成の仕方を以下に示す。

  1. グラフの元になるデータの左上のセルから右下のセルまでドラッグし、選択させた状態にする。
  2. ヒストグラムが書いてあるアイコンをクリックし、グラフウィザードを起動させ、グラフの種類を選択する。
  3. 範囲が正しく設定されてることを確認し、系列を選択する。
  4. タイトルと項目軸の名前を設定し(無くても可)、グラフを表示させるSheetを選択する。
表2
A B C
1 階級 階級値 度数
2 52.0-55.0 53.5 1
3 55.0-58.0 56.5 3
4 58.0-61.0 59.5 1
5 61.0-64.0 62.5 2
6 64.0-67.0 65.5 1
7 67.0-70.0 68.5 1
8 70.0-73.0 71.5 1
  • 実習3:表計算ソフトに上記の表を作成してみよ。また、グラフ作成機能を用いてヒストグラムと度数折れ線を作成してみよ。この時、B列・C列さえあればグラフは作成できる。完成すると「リンク先」に挙げたようなグラフになるはずである。
  • 注意

度数折れ線は左右両端に度数が0である階級があるものとして作図をすると前に述べた。故にこのグラフを表計算ソフトで作成する場合は表2の2行の前の行に階級値が50.5であるもの、8行の後の行に階級値が74.5であるもの(それぞれ度数は0)を事前に挿入しておかなければならない。

平均値・分散・標準偏差

[編集]

以下の表3表2にいくつかの情報を追加したものである。尚、10行については表を見やすくするために空けてある。表の空欄を埋めながら実習をするとよい。

表3
A B C D E F G
1 階級 階級値 度数 階級値×度数 偏差 偏差の2乗 偏差の2乗×度数
2 52.0-55.0 53.5 1 53.5
3 55.0-58.0 56.5 3
4 58.0-61.0 59.5 1
5 61.0-64.0 62.5 2
6 64.0-67.0 65.5 1
7 67.0-70.0 68.5 1
8 70.0-73.0 71.5 1
9 合計 10
10
11 平均値
12 分散
13 標準偏差
  • 実習4:表計算ソフトに上記の表を作成し、D列にそれぞれの「階級値×度数」を求める式を入力せよ。例えばD2のセルの値はB2のセルの値とC2のセルの値を掛け合わせた数値なのでと入力される。
  • 実習5:実習3の結果からB11のセルに平均値を求める式をを使った式で入力せよ。(ヒント:D2~D8のセルの数値の合計を10で割る。)
  • 実習6:E列にそれぞれの偏差を求める式を入力せよ。例えばE2のセルの値はB2のセルの値からB11のセルの値を引いた数値なのでと入力される。
  • 実習7:F列にそれぞれ偏差の2乗を入力した後、G9のセルに「偏差の2乗×度数」の合計を求める式を入力せよ。
  • 実習8:実習7よりB12のセルに分散、B13のセルに標準偏差をそれぞれ表示させてみよ。(ヒント:分散は偏差の2乗の平均なので実習5に同じくが使える。標準偏差は分散の正の平方根なのでを使うと簡単にできる。)


尚、全ての空欄を埋めた表は以下の通りになる。

表3(完成)
A B C D E F G
1 階級 階級値 度数 階級値×度数 偏差 偏差の2乗 偏差の2乗×度数
2 52.0-55.0 53.5 1 53.5 -7.8 60.84 60.84
3 55.0-58.0 56.5 3 169.5 -4.8 23.04 69.12
4 58.0-61.0 59.5 1 59.5 -1.8 3.24 3.24
5 61.0-64.0 62.5 2 125.0 1.2 1.44 2.88
6 64.0-67.0 65.5 1 65.5 4.2 17.64 17.64
7 67.0-70.0 68.5 1 68.5 7.2 51.84 51.84
8 70.0-73.0 71.5 1 71.5 10.2 104.04 104.04
9 合計 10 309.6
10
11 平均値 61.3
12 分散 30.96
13 標準偏差 5.564

相関係数

[編集]

以下の表4資料7を表にしたものである。ここでは今まで学んだことを用いて全ての空欄を埋めて欲しい。13行は表の見やすさのために空けてある。いくつかのセルは結合されているがその手順を以下に示す。以下の例ではA1・A2のセルを結合させる場合を考える。

  1. A1のセルからA2のセルに向けてドラッグ(逆方向にドラッグしてもよい)し、2つのセルを選択させた状態にする。
  2. 選択された範囲内で右クリックし、「セルの書式設定>配置>文字の制御」の「セルの結合」の部分にチェックマークを入れる。
  3. A1・A2のセルの間の境界線が無くなり、2つのセルが結合された状態になる。
表4
A B C D E F G
1 出席番号 体重 身長
2 数値 偏差 偏差の2乗 数値 偏差 偏差の2乗
3 1 60.3 161.2
4 2 57.9 154.3
5 3 65.4 162.8
6 4 56.1 160.4
7 5 53.6 155.7
8 6 62.7 163.5
9 7 70.0 172.5
10 8 55.8 166.4
11 9 67.1 173.2
12 10 63.1 164.0
13
14 相関係数

全ての空欄を埋めた表は以下の通りである。各々作成した表と見比べ確かめてみるとよい。

表4(完成)
A B C D E F G
1 出席番号 体重 身長
2 数値 偏差 偏差の2乗 数値 偏差 偏差の2乗
3 1 60.3 -0.9 0.81 161.2 -2.2 4.84
4 2 57.9 -3.3 10.89 154.3 -9.1 82.81
5 3 65.4 4.2 17.64 162.8 -0.6 0.36
6 4 56.1 -5.1 26.01 160.4 -3 9
7 5 53.6 -7.6 57.76 155.7 -7.7 59.29
8 6 62.7 1.5 2.25 163.5 0.1 0.01
9 7 70.0 8.8 77.44 172.5 9.1 82.81
10 8 55.8 -5.4 29.16 166.4 3 9
11 9 67.1 5.9 34.81 173.2 9.8 96.04
12 10 63.1 1.9 3.61 164.0 0.6 0.36
13
14 相関係数 0.755568

表計算(実践編)

[編集]

ここではセルの参照など、実際の表計算で知っていると便利な項目を紹介しています。

関数の仕様

[編集]

関数の中に別の関数を書くこともできますし、関数を項とみなして加減乗除などもできます。

例えば30度の正弦を求めたい場合にはと入力します。は度数法を弧度法に変換する関数のことです。degreeには求めたい角度を入れます。(この行は数学IIの範囲です)

表計算ソフトには統計に必要な関数が揃っており、以下は前セクションまでに扱った関数です。

  • 四分位数・・・ ※numberには最小値=0・第一四分位数=1・中央値=2・第三四分位数=3・最大値=4と入れる
  • 分散・・・
  • 標準偏差・・・
  • 共分散・・・
  • 相関係数・・・

今までの関数を利用して資料1の代表値等をまとめてみましょう。 は最大値を返す関数、は最小値を返す関数です。

A B C D E F G H I J K
1 出席番号 1 2 3 4 5 6 7 8 9 10
2 体重 60.3 57.9 65.4 56.1 53.6 62.7 70.0 55.8 67.1 63.1
3
4 平均値 61.2 =AVERAGE(B2:K2)
5 中央値 61.5 =MEDIAN(B2:K2)
6 範囲 16.4 =MAX(B2:K2)-MIN(B2:K2)
7 分散 26.038 =VARP(B2:K2)
8 標準偏差 5.1027 =STDEVP(B2:K2)

セルの参照

[編集]

前の実習のようにいちいち式を書くのは面倒ですし間違いが起こりやすくなります。ここで活躍するのがセルの参照です。実際に見ていきましょう。

下の表は表3のB・C・D列を抜き出し、E列に備考を加えたものです。備考には左隣のセルに対応する式が入ります。

セルの参照
B C D E
1 階級値 度数 階級値×度数 備考
2 53.5 1
3 56.5 3
4 59.5 1
5 62.5 2
6 65.5 1
7 68.5 1
8 71.5 1

D2のセルは実習3の通りでしたね。D3以降は実習では・・・とやったはずです。

D2のセルの数式をコピーしD3のセルにペーストしてみましょう。するとD3のセルには169.5と出力されます。ここでD3に代入された式を見るとと参照しているセルが自動的にそれぞれが1行下になっていることが分かります。目で見える情報では番地になって出てきますがプログラム内では3つ左のセルの数値と2つ左のセルの数値を掛け合わせなさいという命令に置き換わっているのです。この命令をコピーペーストしているのですから、反映先のセルの命令も全く変わりません。下の表は必要な部分だけ抜き出しています。

B C D E
1 階級値 度数 階級値×度数 備考
2 53.5 1 53.5 =B2*C2
3 56.5 3 169.5 =B3*C3

同じようにD列の他のセルにペーストしてみましょう。

B C D E
1 階級値 度数 階級値×度数 備考
2 53.5 1 53.5 =B2*C2
3 56.5 3 169.5 =B3*C3
4 59.5 1 59.5 =B4*C4
5 62.5 2 125.0 =B5*C5
6 65.5 1 65.5 =B6*C6
7 68.5 1 68.5 =B7*C7
8 71.5 1 71.5 =B8*C8

これで完成しました。コピーペーストをした時に自動的に参照が変わる方法を相対参照と言います。

下の表は表3の平均値の計算まで終わり偏差を求めようとする段階です。F列は備考としておきます。偏差は階級値-平均値でしたね。E2のセルにと入力しましょう。

A B C D E F
1 階級 階級値 度数 階級値×度数 偏差 備考
2 52.0-55.0 53.5 1 53.5 -7.8 =B2-B11
3 55.0-58.0 56.5 3 169.5
4 58.0-61.0 59.5 1 59.5
5 61.0-64.0 62.5 2 125.0
6 64.0-67.0 65.5 1 65.5
7 67.0-70.0 68.5 1 68.5
8 70.0-73.0 71.5 1 71.5
9 合計 10
10
11 平均値 61.3
12 分散
13 標準偏差

E2のセルをコピーしてE3のセルにペーストしてみましょう。4行から9行は割愛しています。

A B C D E F
1 階級 階級値 度数 階級値×度数 偏差 備考
2 52.0-55.0 53.5 1 53.5 -7.8 =B2-B11
3 55.0-58.0 56.5 3 169.5 56.5 =B3-B12
10
11 平均値 61.3
12 分散
13 標準偏差

明らかに間違いな数値が出てきてしまいました。E3のセルの式を見ると となっています。プログラム内では3つ左のセルの数値から3つ左、9つ下のセルの数値を引きなさいという命令に置き変わっています。コピーペーストしてもその命令は変わらないので、参照先が両方とも移動してしまいます。今の段階ではB12のセルに何も入っていないのですから、そのセルには0が入っているものとして計算されます。他のE列にコピーしてもやはり間違いな数値が出力されます(実験してみて下さい)。ここでは出てきませんが、文字列のセルと数値のセルを計算しようとするとエラーになります。

このような場合は参照するセルを固定することが必要になります。参照セルを固定する場合は固定したい番号の前に $ の文字を入れます。行番号も列番号も固定したい場合はそれぞれの番号の前に$をつけます。

では平均値が出力されているB11を固定してE2のセルをコピーしE3のセルにペーストしてみましょう。この場合は11のほうを固定したいのでB$11のように入力して固定します。

A B C D E F
1 階級 階級値 度数 階級値×度数 偏差 備考
2 52.0-55.0 53.5 1 53.5 -7.8 =B2-B$11
3 55.0-58.0 56.5 3 169.5 -4.8 =B3-B$11
10
11 平均値 61.3
12 分散
13 標準偏差

これで正しい結果を得ることができました。参照セルを固定する方法を絶対参照と言います。

結局$ はどうつければいいの?」という疑問があるかと思いますが、ここでは簡単のために左右に移動させたくない場合はアルファベットの前に$上下に移動させたくない場合は数字の前に$どちらにも移動させたくない場合はアルファベット・数字両方の前に$と思っておけばいいでしょう。つまずきやすい場所なので実際に練習してみて動きを見るのも大切です。慣れると考えずとも正しく$をつけられるようになります。

詳しくは旧初級シスアド試験の表計算セクションに記述されています。

条件分岐

[編集]

ある物事を一定の数値以上ならAを表示、それ未満ならBを表示する・・・などの操作をするためにどのようなことをするか学びましょう。

以下の表はレタス・トマト・ねぎの値段を記したものです。ここで以下のような条件をつけてみます。

値段を比較して昨年と同じか上がっている野菜は「↑」下がっていれば「↓」を比較列に入力する

A
B
C
D
1 野菜 昨年同時期の値段 現在の値段 比較
2 レタス 138 125
3 トマト 152 160
4 きゅうり 99 99

IF関数はで指定します。formulaには論理式、value1には真の場合の値を、value2には偽の場合の値を入力します。値が半角数字や関数でない場合はvalue1やvalue2に" "をつけるのを忘れずに。" "は" "で囲まれた文字を出力しなさい、という命令です。

論理式には判定の条件となる式を入れます。(true)であることは論理式を満たすもの、逆に(false)はそうでないもののことです。

論理式には比較演算子なるものを入れます。簡単に言えば等号や不等号のことです。気をつけるべき点としてはいわゆる≧や≦、≠の全角記号は使えないということです。

  • ・・・A1の値が100より大きい
  • ・・・A1の値が100より小さい
  • ・・・A1の値が100以上
  • ・・・A1の値が100以下
  • ・・・A1の値が100である
  • ・・・A1の値が100ではない

また、真偽を反転させたい場合はで記述します。はfalse、はtrueになります。

レタスを例にすると、D2のセルを選択し、以下のように記述します。昨年を基準として今年はそれ以上なのかどうかを判定するわけですから、論理式にはと入力します。真偽の部分には矢印を入れます。

  • =IF(B2<=C2,"↑","↓")

レタスは昨年より値段が下がっているので論理式を満たさず偽に書かれている内容が出力されます。

A
B
C
D
1 野菜 昨年同時期の値段 現在の値段 比較
2 レタス 138 125
3 トマト 152 160
4 きゅうり 99 99

他の野菜は相対参照を活用することができますので、似た式の入力を2回も3回もやる必要はありません。

A
B
C
D
1 野菜 昨年同時期の値段 現在の値段 比較
2 レタス 138 125
3 トマト 152 160
4 きゅうり 99 99

IF関数は真・偽の2つの分岐をする関数ですので、3分岐以上させるにはIF関数を複数使う必要があります。以下の表はある娯楽施設の入場料を示したものです。

一度に入場する人数 1人当たりの入場料
30人未満 1,200円
30人~39人 1,100円
40人以上 1,000円

こちらは上記の娯楽施設の団体予約表です。

A
B
C
1 期日 予約人数 1人当たりの値段
2 7月18日 25
3 7月19日 46
4 7月20日 38

まずは40人以上から設定しましょう。C2のセルにIF関数を用います。40人以上ならば入場料を1,000円にするので、以下のように設定します。

  • =IF(C2>=40,"1,000円",)

ここで偽となった場合、更に2種類の選択肢があります。更に分岐させる場合は1度IF関数を呼び出します。

  • =IF(C2>=40,"1,000円",IF())

2つ目のIF関数において今度は30人~39人の入場料は1,100円を設定していきましょう。既に40人以上の設定は1つ目のIF関数で終わっているので30<=B2<=39と書く必要はなく30<=B2だけでよいのです。ここで真の場合は30人~39人、偽の場合は29人以下ですので、これで設定は全て終了です。エラーが出る場合は括弧や" "が正しく閉じているか、カンマに漏れや余計なものがないかに気をつけましょう。

  • =IF(C2>=40,"1,000円",IF(C2>=30,"1,100円","1,200円"))

セルに反映してみましょう。4つ以上の場合も偽の場合に更にIF関数を使用することによって分岐できます。ただし、IF関数を同時に使用できるのは64回(Excel2003バージョンは7回)までなことには注意しましょう。

A
B
C
1 期日 予約人数 1人当たりの値段
2 7月18日 25 1,200円
3 7月19日 46 1,000円
4 7月20日 38 1,100円

複数の条件がある分岐

[編集]

条件が1つでない場合は論理式にAND関数ないしOR関数で複数の条件を記述します。

  • 複数の条件があり全てが満たされている場合真となるものはAND関数
  • 複数の条件がありどれか1つでも満たされている場合真となるものはOR関数

AND関数の例を見てみましょう。以下はある資格試験の点数状況の受験番号の若い人から数人を示したものです。配点は第1問400点・第2問300点・第3問300点とし、合格ラインは全体7割以上かつ各問5割以上です。

A
B
C
D
E
F
1 受験番号 第1問
(配点400)
第2問
(配点300)
第3問
(配点300)
全体
(満点1000)
判定
2 1001A 325 269 172 766
3 1002B 173 260 291 724
4 1003C 232 163 200 595

論理式には合格ラインを入れます。点数の条件が全て合格ライン以上でないと合格にならないため、AND関数を使用します。AND関数はで表記します。各formulaには条件式を入れます。

この試験の場合は第1問200点以上・第2問150点以上・第3問150点以上・全体700点以上の全てを満たせば合格です。

これを条件にしたIF文を記述します。受験番号1001Aの人の判定をしてみましょう。

  • =IF(AND(B2>=200,C2>=150,D2>=150,E2>=700),"合格","不合格")

受験番号1001Aの人は合格ラインの全てを満たしていたので合格です。

A
B
C
D
E
F
1 受験番号 第1問
(配点400)
第2問
(配点300)
第3問
(配点300)
全体
(満点1000)
判定
2 1001A 325 269 172 766 合格
3 1002B 173 260 291 724
4 1003C 232 163 200 595

他の人も見ると受験番号1002Bの人は第1問が下回っていたので不合格、受験番号1003Cの人は全体が下回っていたので不合格となります。

A
B
C
D
E
F
1 受験番号 第1問
(配点400)
第2問
(配点300)
第3問
(配点300)
全体
(満点1000)
判定
2 1001A 325 269 172 766 合格
3 1002B 173 260 291 724 不合格
4 1003C 232 163 200 595 不合格


OR関数も同様にしてで記述します。

先程の試験は第1問200点以上・第2問150点以上・第3問150点以上・全体700点以上の全てを満たせば合格でした。この合格ラインを逆に見ると第1問200点未満・第2問150点未満・第3問150点未満・全体700点未満のどれか1つでも満たしてしまうと不合格になるということです。これを条件にしてみましょう。

OR関数が真の時不合格になるわけですから、真偽の振る舞いが先程とは逆になることに注意しましょう。

  • =IF(OR(B2<200,C2<150,D2<150,E2<700),"不合格","合格")

受験番号1001Aの人の判定に上式を入れても2つ上の表と同じになります。

演習問題

[編集]