【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言

いまとあるプログラムの構築を目指して、色々と試行錯誤をしているところです。
そのプログラムの実験のために、学生のテストの点数分布を利用したく思います。
例えば、生徒100人の点数をランダムで用意しようとする時は、
RANDBETWEEN関数を使うことで、0点から100点までのランダムな数字を点数として、用意することができます。
しかし、実際のテストの点数では、本当にまるっきり0~100のうちの規則性のないランダムな数字になることはありません。
例えば、生徒の大半は60~80点をマークしているが、若干名100点に近い生徒もいれば、全く勉強せずに20点程度の生徒も数名いることがあると思います。
このように点数の分布がある程度、見えてくるものです。
また、試験科目によっても、この科目のテストは全体として、点数が低め、点数が高め、または生徒によって本当に点数にバラツキがある。
など様々な傾向がありますよね。

このような点数分布を考慮したり、平均点を高め(もしくは低め)になるように設定しつつ、ランダムな数字を与える関数はあるのでしょうか。

質問者からの補足コメント

  • とりあえず今思いついているのは、
    仮にエクセルで100人分の点数を用意するとして
    はじめの50人には、=RANDBETWEEN(50,90)
    つぎの10人には、=RANDBETWEEN(90,100)
    つぎの10人には、=RANDBETWEEN(0,30)
    残りの30人には、=RANDBETWEEN(0,100)
    を関数として入力しようと思っています。

      補足日時:2024/10/02 11:56

A 回答 (2件)

こんにちは



既に回答が出ていますけれど・・

RNDやRANDBETWEENで返されるのは、言わば、均等分布です。
一方で、お求めのテストの点数のようなものは、概ね正規分布のような形状に近い分布をするものと考えられます。

既回答にあるように、NORMINV関数を利用して平均と偏差を与えれば、お求めのような疑似データを作成することが可能です。
https://support.microsoft.com/ja-jp/office/normi …

※ 0~100点のテストで、(テストが難しくて)平均点が低く、片側が切れる(0点以下はないので)なども考えられますが、そのあたりは適当に応用してください。
    • good
    • 0

平均値と標準偏差を指定すればよいだけなのでRANDにNORMINVを組み合わせる。

    • good
    • 3

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A