作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我要填写出勤的虚拟数据。我希望,例如,60% 的学生出勤率在 70-100,25% 的范围内,40-60 的范围内,15% 的学生出勤率在 0-40 的范围内。如何在 Python 中使用随机数生成它。是否有任何内置功能?
我知道 numpy.random.choice 允许预定义离散数的概率,但有没有办法指定 bin/ranges 的概率?
最佳答案
如果你知道学生的数量N,你可以取
N_ha = int(N * 0.6) # students with high attendance
N_la = int(N * 0.15) # students with low attendance
N_aa = N - ha - la # students with average attendance
att_ha = np.random.random(N_ha) * 0.3 + 0.7 # this creates N_ha attendances in the half-open range [0.7, 1)
att_la = np.random.random(N_la) * 0.4
att_aa = np.random.random(N_aa) * 0.2 + 0.4 # sure you didn't mean between 40 and 70? in that case, substitute 0.2 with 0.3
attendances = x = np.append(att_ha, np.append(att_la, att_aa))
np.random.shuffle(attendances)
关于python-3.x - 鉴于我有python中指定的各种范围的概率,我如何生成随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49793349/
我是一名优秀的程序员,十分优秀!