始める無料で始める

「スイッチ」を行う関数を書く

「スイッチ」をシミュレーションする前に、この状況で公開(reveal)を行う関数を書いておきましょう。次の演習で、この関数を使ってスイッチした場合の勝率をシミュレーションします。

最初に選んだドアが正解だった場合、司会者は残りの2枚のうちどちらかをランダムに選んで公開します。

最初に選んだドアが不正解だった場合、司会者はもう一方の不正解のドアを公開します。この場合の公開にはランダム性はありません。

この演習はコースの一部です

Rで解く確率パズル

コースを見る

演習の手順

  • 最初の選択が正しかった場合は、sample 関数を使って、他のドアのうち1枚をランダムに選んで公開します。
  • それ以外の場合は、公開すべき残り1枚のドアを選びます。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

reveal_door <- function(doors, prize, initial_choice){
  if(prize == initial_choice){
    # Sample at random from the two remaining doors
    reveal <- sample(x = ___, size = 1)
  } else {
    
    # When the prize and initial choice are different, reveal the only remaining door 
    reveal <- ___
  }  
}
コードを編集して実行