p1 <- c(.25,.025,.025,.1,.2,.4)
T <- sample(1:6,size=N,replace=TRUE, prob=someprobabilityvector)
Y <- rbinom(N,1,p1[c(T)])
嗨大家好,我是R的新手并且编程一般,需要一些帮助才能理解基础知识。有人可以向我解释上面的向量Y中发生了什么。我弄清楚p1[c(T)]
上面做了什么。但不知道Y正在做什么。提前感谢所有帮助。
答案 0 :(得分:2)
代码的第一行创建了一个包含六个概率的向量:
p1 <- c(.25,.025,.025,.1,.2,.4)
在第二行中,您随机选择数字1到6中的N
值(替换)。每个值的概率在someprobabilityvector
中指定。因此,该函数将返回长度为N
的向量,包括1到6之间的值
T <- sample(1:6,size=N,replace=TRUE, prob=someprobabilityvector)
在第三行中,生成来自二项分布的N
个随机数,其中包含p1[c(T)]
中指定的一个试验和概率。 c(T)
与T
相同:向量包含1到6的值。向量用于索引向量p1
。因此,p1[c(T)]
将返回包含来自向量N
的{{1}}值的向量。
p1
由于指定的二项分布仅有一个试验,因此向量Y <- rbinom(N,1,p1[c(T)])
将包含零和一。