gpt4 book ai didi

python - 骰子实验结果的分布

转载 作者:行者123 更新时间:2023-12-03 23:34:26 25 4
gpt4 key购买 nike

所以我写了一个简短的 Python 函数来绘制骰子实验的分布结果。它工作正常,但是当我运行例如 dice(1,5000)dice(10,5000)dice(100,5000) 直方图显示偏态分布(对 6 的高度偏好)。但是,平均值显示了 3.5 左右的预期值。我想这可能与随机数生成有关,所以我尝试了两种方法:第一种方法是 random.randint,第二种方法是代码。但是,它们提供了类似的结果。好像上限有问题。但我不确定为什么会有这样的分布偏差。

import matplotlib.pyplot as plt
import numpy as np
import random

# Throw a dice
def dice(N,n):
result = np.zeros((n,N))
'''
N: number of dices
n: number of experiment
'''
for i in range(n):
for j in range(N):
random_number = random.random()
outcome = int(random_number * 6 + 1)
result[i][j]=outcome
laverage = np.mean(result)

print('Result of throwing %d dice(s) for %d times:'%(N,n),result)
print(laverage)
plt.hist(np.resize(result,(N*n,1)),bins=[x for x in range(1,7)])
plt.xlabel('Outcome')
plt.ylabel('Number of occurences')
plt.show()

dice(1,5000)

最佳答案

您的绘图仅显示 5 个条形 - 条形位于数字的右侧,因此我相信 56 的结果正在合并。如果您更改为 range(1,8),您会看到更多您所期望的内容。

enter image description here

关于python - 骰子实验结果的分布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62418159/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com