0我想生成一个随机整数序列,可以以某种方式对其进行配置。我希望该序列在某些数字出现的频率以及每两个连续出现之间的间隔方面是可配置的。我序列中的数字在确定的范围内。我的想法是,我希望有不同的序列,其中包含一些模式,因为当我将其用作我编写的另一个程序的输入时,我有兴趣分析模式本身的影响。
能否请您指导我到哪里可以找到可以帮助我的算法?我在网上搜索时,发现的只是均匀分布,在这种情况下不是我想要的。
在这里,我只拥有基本参照序列的代码,但是我不知道如何从这里移走。
import random
from random import randint
f= open('Sequence.txt' , 'w+')
random.seed()
NumberOfVar = random.randint(10000, 100000)
random.seed(3)
NumberOfLines = random.randint(10000, 50000000)
for Iterator in range(0, NumberOfLines):
Var = random.randint(0, NumberOfVar)
S = str(Var )+ "\n"
f.write(S)
f.close()
谢谢
答案 0 :(得分:1)
请记住,我们不了解您的详细要求:
我很想一次生成一个数字序列。您可以根据序列的状态更改生成参数,直到该点为止,并适当地改变生成和拒绝值。
numpy的random.choice
具有一个可能帮助您的概率分布参数。
答案 1 :(得分:0)
一种可能性是从垃圾箱中进行选择。例如,如果您想要双倍的奇数,则您的垃圾箱看起来像:[0, 1, 1, 2, 3, 3, 4, 5, 5, ...]
从垃圾箱中进行选择,可以根据需要选择是否替换。
当然,对于某些要求,构建正确的垃圾箱可能很复杂。