如何解决二项式分布返回一个Numpy数组
给定每个试验的试验次数(n)和概率(p),需要生成10次测试的二项式分布。
输出应包含一个numpy数组,其中包含10个代表所需二项式分布的数字。
样本输入: 0 10 0.5
预期输出:
[5 6 5 5 5 6 5 7 8 5]
我的代码:
import numpy as np
import pandas as pd
pd.set_option('display.max_columns',500)
np.random.seed(0)
seed=int(input())
n=int(input())
p=float(input())
i = 1
while i <= n:
x = np.random.binomial(n,p)
s=np.array(x)
print(s)
i += 1
5 6 5 5 5 6 5 7 8 5
解决方法
尝试以下方法,它会生成10个二项式RV,而不会产生循环:
import numpy as np
n = 8
p = 0.1
np.random.binomial(n,p,10)
# array([0,1,2,3,0])
,
试试这个,
np.random.seed(0)
s=np.random.binomial(n,10)
print(s)
,
import numpy as np
seed=int(input())
n=int(input())
p=float(input())
np.random.seed(seed)
s =np.random.binomial(n,10)
print(s)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。