基于概率权重向量的随机抽样

时间:2012-06-17 14:59:07

标签: r probability sampling

我有矢量d<-1:100

我想从此向量中取样k = 3次,无需替换。我想制作与第一个采样元素距离length(d)/k的元素,以获得更高的采样概率。我还不确定还有多高。我知道sample有一个prob=参数,但我似乎无法找到一种方法,以便从初始样本的位置重新计算prob=向量。

有什么想法吗?

示例: d<-1:100。让我们说第一次试验样本d[30]=30。那么接近0,60和90的ddd元素应该具有更高的采样概率。因此,在初始样本之后,ddd的其余元素的采样概率的分布如图像所示:image

1 个答案:

答案 0 :(得分:2)

我想:

samp <- sample(1:100,1)
prob <- rep(1,100)
prob[samp]=0

更多编辑:我今天是个白痴。现在这将使你要求的概率形状。

peke<-c(2,5,7,10,7,5,2)  #your 'triangle' probability
for (jj = c(0,2,3){
prob[(1:7)*(1+samp*(jj)] <- peke
}
newsamp <-sample(1:100,1,prob)

如果没有将概率峰值放在您想要的位置,您可能需要添加一个轻微的偏移量。