第12回 バブルのシミュレーション

[講義ノートの目次に戻る]


株価の評価方法[top]

テキストP.75〜77参照

RAND関数とIF関数[top]

●RAND関数は乱数を発生させます.バブルのシミュレーションでは,これを使って,ホワイトノイズを生成しています.

RAND() :0から1の範囲の乱数を発生させる関数
     例:=RAND() ---> 0.0455024

0以上でnを超えない整数の乱数を発生させるには,
     例:=INT(RAND()*n)
        n のところに適当な整数を入力します.

1以上の整数を発生させるには,
     例:=INT(RAND()*n)+1  とします.
INTは整数(integer)にする関数です.少数の「切り捨て」を行うときにも利用できます.
同じような関数に TRUNC関数があります.

(参考)RANDBETWEEN関数というのもあります.
    RANDBETWEEN(MIN, MAX)  
MINとMAXの間の整数の乱数を発生させます.ただし,RANDBETWEEN関数はアドインマネージャーで追加する必要があります.

●IF関数は条件分岐させるときに利用します.バブルのシミュレーションでは,バブルの崩壊を起こさせるときに利用しています.

IF(論理式 , 値1 , 値2) 論理式が真なら値1,偽ならば値2を実行します.

入れ子構造にすることで,より複雑なIF関数をつくることができます.以下ではAND関数と組み合わせています.
例:

=IF(AND(C4>=80,C4<=100),"A",IF(AND(C4>=55,C4<75),"B"))

上の例では,C4の値が80以上100以下ならAを表示し,55以上で75未満ならBを表示します.

RANK関数とMATCH関数[top]

●RANK関数
数値を順位づける関数.

RANK(セルの位置, データ範囲)
例 =RANK(B7,$B$7:$B56)

$B$7:$B$56の範囲には,RAND関数,RAND() で事前に乱数が作成してあります.
上のRANK関数は,B4の欄の値が$B$7:$B$56の範囲内で大きい順番に並べて上から何番目になっているかを示します.

●MATCH関数
「乱数の順序づけ」の列の1番から10番まではどの「応募者の番号」に対応しているかを見つけます.照合の型 0 は一致する場合です.

MATCH(検査値, 検査範囲, 照合の型)
例 =MATCH(E7,$C$7:$C$56,0)

$C$7:$C$56(順序づけの列)の中で,E7(ここでは1番)に対応するのは「応募者の番号」の列で上から何番目かを調べて,値を返します.

以下のサイトも参照してください.
日経BP WPC ARENA
http://arena.nikkeibp.co.jp/lecture/excel36/20020521/01/


[top] [講義ノートの目次に戻る]


Mail to: sasayama@kumagaku.ac.jp
Copyright(C) Kumamoto Gakuen University