基于输入向量分布的R样本

yzckvree  于 2022-12-06  发布在  其他
关注(0)|答案(1)|浏览(120)

我有一个名为data的数字向量,长度为3205。

head(data,20)
 [1]  225.43200   29.20875  329.46792   22.70996
 [5]   80.84970  374.23959  343.11610  319.04798
 [9] 2477.73200   72.79434   30.53376   92.39412
[13]   47.70744   52.30388  339.59634 1177.00448
[17]   48.27329  541.80997   38.45772 1568.93400

此数据的密度图如下所示:

plot(density(data))

我想随机抽样一个给定分布的向量。大多数情况下,选择的数字将低于1000,但也有一个小的机会,它是1000-3000,如果我们要绘制的密度合成抽样向量,它将最终看起来与这个密度图相同。什么是最好的方法来做到这一点?

hmae6n7t

hmae6n7t1#

Stackoverflow链接中的一条评论中给出了一个公认的答案,建议使用经验 cdf 来执行逆采样方法。这是正确的,但有一个最简单的方法可以达到同样的结果:只需要从向量中随机选取一些元素,并进行替换。
另一种可能性是使用kde1d软件包从与向量分布拟合的连续分布中进行采样:

library(kde1d)
fit <- kde1d(data)
simulations <- rkde1d(1000, fit)

相关问题