我试图创建一个马尔可夫链,并希望根据概率在列表中选择数字,这可以是任何number.for例子,l表示来自1-1-2和1-3的概率。M表示来自2-1、2-2和2-3的概率.N表示从3-1,3-2,3-3 -3到3-3的概率.
l=c(1/3,1/3,1/3)
m=c(2/5,3/5,0)
n=c(1/7,0,6/7)
序列从1开始,从3开始,i可以根据不同的机会生成不同的数字列表。例如(1,3),(1,2,2,1,3)(1,2,2,1,3)等。
有没有人知道R中是否有一个函数可以生成一个基于概率的数字?非常感谢。
发布于 2015-12-19 19:58:01
如果您想从一个简单的函数开始,该函数用给定的概率mynumbers
从一系列数字myprob
中采样,则可以使用基本的R sample
函数:
mynumbers = c(1,2) #you numbers to sample from
myprob = c(.25, .75) #your probabilities
d = sample(mynumbers,
size = 1000, #1000 times sampled from `mynumbers`
replace = T,
prob = myprob)
table(d) #This should show you the approximate probability of `myprob`
这个有用吗?
https://stackoverflow.com/questions/34374703
复制相似问题