在0或者1中,产生24个数,其中1出现次数为6次。

m
miked
楼主 (北美华人网)
在0或者1中,产生24个数,其中1出现次数为6次,0出现18次。 如何编写这个程序? 谢谢!
c
carolena
np.random.choice([0, 1], 24, p=[0.75, 0.25])
l
lonesun
在0或者1中,产生24个数,其中1出现次数为6次,0出现18次。 如何编写这个程序? 谢谢!
miked 发表于 2022-05-31 23:22

## python import numpy as np
lst = [0] * 18 + [1] * 6 result = np.random.permutation(lst)
周瑜
np.random.choice([0, 1], 24, p=[0.75, 0.25])
carolena 发表于 2022-05-31 23:29

你这个不能保证一定是18次和6次吧。
c
carolena
你这个不能保证一定是18次和6次吧。
周瑜 发表于 2022-05-31 23:33

我以为lz要的是随机数,按概率生成。 如果要确定的那就很简单了…直接生成个list就完了
m
miked
np.random.choice([0, 1], 24, p=[0.75, 0.25])
carolena 发表于 2022-05-31 23:29

这个有时候会多于6个1,或者少于6个1.
m
miked
## python import numpy as np
lst = [0] * 18 + [1] * 6 result = np.random.permutation(lst)
lonesun 发表于 2022-05-31 23:33

多谢! works like a charm.
c
carolena
这个有时候会多于6个1,或者少于6个1.
miked 发表于 2022-05-31 23:39

是的… 一定要6个就是三楼的
l
ljmdtc
题目没说清,你是说必须出现6次,还是75%概率就行?如果必须出现6次,并且是随机,可以用中学概率学的东西
g
g00gle
你这个不能保证一定是18次和6次吧。
周瑜 发表于 2022-05-31 23:33

你楼上那个可以
m
miked
回复 9楼ljmdtc的帖子
也谢谢你!
h
hankzhang
楼主没说清楚吧。是产生24个满足条件的数还是产生所有满足条件的24-digit的数?