前提・実現したいこと
『東京大学のデータサイエンティスト育成講座』という教材で確率論を勉強しています。
その中で、「実験的にサイコロを1000回振るシミュレーションを実施し、
それぞれの根元事象が実際に数学的確率の1/6で起きるのか」を
計算しようとしています。
そこで1~6までの数字がどれくらいの割合で抽出するかを計算する過程で以下のエラーメッセージが発生しました。
コードは教材通りです。
発生している問題・エラーメッセージ
TypeError Traceback (most recent call last) <ipython-input-15-92a5a4ceb1f1> in <module> 2 dice_rolls = np.random.choice(dice_data, calc_steps) 3 for i in range(1, 7): ----> 4 p = len(dice_rolls[dice_rolls==i]) / calc_steps 5 print(i, 'the probability', p) TypeError: unsupported operand type(s) for /: 'int' and 'tuple'
該当のソースコード
Python
1calc_steps = 1,000 2dice_rolls = np.random.choice(dice_data, calc_steps) 3for i in range(1, 7): 4 p = len(dice_rolls[dice_rolls==i]) / calc_steps 5 print(i, 'the probability', p)
試したこと
len(dice_rolls[dice_rolls==i]) / calc_stepsの
割り算が恐らくできないのだろうという予想なのですが、
だったら確率をどうやった求めるんだ?
みたいな感じになりまして、
路頭に迷っております。
何かいい方法があれば教えてください。
宜しくお願い致します。
補足情報(FW/ツールのバージョンなど)
jupyter notebook 5.7.8
回答3件
あなたの回答
tips
プレビュー