【发布时间】:2021-10-27 19:10:23
【问题描述】:
我想知道我应该在这里做什么(请参阅图片)。我已经定义了两个向量,它们是k=c(0,1) 和v=c(runif(2,0.3,0.7)),其中alpha=v[1] 和beta=v[2]。
之后,我使用了一个 if 语句,if(Xn==k[1]){...} 但是这就是我坚持的地方。根据问题,我必须同时分配Xn+1=k[1] 概率(alpha)Xn+1=k[2] 概率(1-alpha) 和if(Xn==k[2]){...} 然后Xn+1=k[1] 概率(beta)和Xn+1=k[2]会有概率(1-beta)。
所以我的问题是如何将值分配给0 和1 的相应Xn+1 值,概率为[(alpha), (1-alpha)] 和[(beta),(1-beta)]。分配它之后,您如何使用for 循环对随机变量从X1 到X500 的500 个观察值进行模拟这类似于抛硬币实验,不同之处在于正面和正面的概率尾部由 [alpha,beta] = runif(2,0.3,0.7)` 决定。
【问题讨论】:
-
我清理了您的格式,但不清楚您尝试了什么。您首先解释您定义了
k和v,但问题没有提到变量k或v。你能解释一下吗?您的内联代码(也许是您的实际代码)在您是否使用括号进行索引方面似乎非常草率。Xn和Xn+1与X[n]和X[n + 1]和X[n] + 1的含义截然不同。请始终为您尝试执行的操作使用有效的代码语法。 -
如果您将代码放在单个可运行代码块中,那么到目前为止您的尝试会更加清晰。目前,如果我尝试运行您共享的代码,我可以定义
k和v,但是您的行if(Xn==k[1]){....}将是一个错误,因为Xn没有定义。因此,请通过分享所有定义、解释变量的含义并解释您的尝试来使您的示例具有可重复性。 -
好的,谢谢。抱歉,我没有注意到您的评论。以后会做得更好
标签: r probability-distribution uniform-distribution